2

キャプチャで括弧で囲まれた部分式は、一致しないオプションの部分にある場合でも、後方参照番号にカウントされることを知っていますが、交互のブランチにある場合はどうでしょうか。(adam)|(eve)は\1のアダムまたは\2のイブ、または\ 1のアダムまたはイブを与えますか?

すべてのキャプチャ括弧はまだ左から右にカウントされますか、それともこれら2つは番号付けで1つとしてカウントされますか?もしそうなら、(神)|(アダム)&(イブ)のように、選択肢に異なる数のキャプチャがあるとどうなりますか?

''、 ""のいずれか、またはその周りに何もない値をキャプチャしたいのですが、これが私が持っているものです。

(['"])(.*?)\1|([^'"]+)
4

1 に答える 1

3

後方参照は、一致した括弧の数に関係なく、括弧の量をカウントします。

だから、で(god)|(adam)&(eve)

\1-「神」または空
\2-「アダム」または空
\3-「イブ」または空

ここを参照してください:http://jsfiddle.net/MnASH/

于 2012-06-08T04:01:01.017 に答える