(?:\/(\w+?=\/)\/(\w+))*
有沒有什麼辦法從組內檢索反向引用?在上面的表達式中,沒有引用(?:)會阻止整個組捕獲反向引用?從重複組生成反向引用
試圖匹配,例如: /hello/how/are/you.../today和捕捉
(?:\/(\w+?=\/)\/(\w+))*
有沒有什麼辦法從組內檢索反向引用?在上面的表達式中,沒有引用(?:)會阻止整個組捕獲反向引用?從重複組生成反向引用
試圖匹配,例如: /hello/how/are/you.../today和捕捉
之間的「/」的所有值是否有任何辦法從組內反向引用?
是的。組不在層次結構中解釋。例如(a(b))
只有兩個組,一個和兩個,可以(後面)引用。在參考文獻方面,它等於(a)(b)
。引用的順序只是由正則表達式模式中的組順序決定的(由組的開始決定)。一個團體是另一個團體的一部分並不能改變這一事實。
在上面的表達式中,no-reference(?:)是否阻止整個組捕獲反向引用?
不。它只能防止標記爲非捕獲組的組捕獲(返回)引用。嵌套組不受影響,將被捕獲,除非它們也被標記爲非捕獲組。
那麼它只花了我幾個月的時間來標記這個但是爲了答案。正則表達式的例子往往很弱,所以每當我遇到一些複雜的測試或stackoverflow複雜的。 – 2013-06-13 13:50:33
非常感謝標記:) – 2013-06-14 14:28:50
'\ w'不一定被'['']'包圍「。我很肯定在'?='之前應該有一個左括號'(經過適當的修改)。 – Dukeling 2013-03-07 21:02:50
我添加\ w只是爲了更容易閱讀。編輯,以便更容易閱讀thx – 2013-03-07 21:04:24
最快的解決方案是加倍'/' – BlackBear 2013-03-07 21:14:28