3

、などreplaceを使用して、javascript 関数で正規表現のキャプチャ グループを取得する方法に関する多くの情報を見つけることができます。しかし、本当に必要なのは、正規表現自体でキャプチャ グループを逆参照する方法です。$1$2

次の 3 つの文字列を 1 つの正規表現と一致させる必要があります。

<--text-->
<**text**>
<++text++>

text実際はどこですか[a-zA-Z]+

Rubyにはすでにこのパターンがあります:

/<([-+*]{2})(.+)\1>/

ここで使用したことは気にしませんが、javascriptで後方参照(.+)を実現する方法を知りたいです。\1何か案は?

4

1 に答える 1

8

試してみませんか?同じように動作します:

var regex = /<([-+*]{2})(.+)\1>/;

var str = "<--text-->";
regex.exec(str); // ["<!--text-->", "--", "text"]

str = "<--text**>";
regex.exec(str); // null
于 2013-04-26T09:54:28.970 に答える