我知道捕获括号的子表达式在后面的参考编号中计算,即使它们位于不匹配的可选部分中,但是当它们处于交替的分支时呢? Will(亚当)|(前夕)在\ 1或者前夕在\ 2中给亚当,或者在\ 1中给亚当或者前夕?
所有捕获 - 括号是否仍然从左到右计数或者这两个在编号中计为一个?如果是这样,当你在选择中有不同数量的捕获时会发生什么,例如(上帝)|(亚当)&(前夕)?
我想用'',“”或者没有任何东西捕获一个值,这就是我所拥有的:
(['"])(.*?)\1|([^'"]+)
答案 0 :(得分:2)
反向引用计算括号的数量,无论它们中有多少匹配。
所以,在(god)|(adam)&(eve)
:
\ 1 - "上帝"或空的 \ 2 - " adam"或空的 \ 3 - " eve"或空