我有一个像这样的正则表达式
.replace(/ *\*[^)]*\* */g, "");
如果在以下字符串上释放:
preg_match_all('@(1[0-9]+) (1[0-9]+)@'...
返回两场比赛 1000 11234 和 1324 1456
有没有办法在后面的正则表达式中的第一个括号中反向引用正则表达式代码?
例如:
Speed 1000 11234
Weight 1324 1456
我不是在寻找匹配参考 \ 1 ,因为这只适用于像123 123这样的镜像匹配
我也不想将正则表达式字符串保存到变量中,然后将其粘贴到preg_match_all('@(1[0-9]+) (\backRef1)@'... // This pseudocode is identical to @(1[0-9]+) (1[0-9]+)@
内部,我想在正则表达式中直接引用它。
这可能吗?
由于
答案 0 :(得分:1)
请参阅Regular Expression Subroutines。
您可以通过\g<1>
或(?1)
(1[0-9]+) (?1)
用于命名捕获组的更新:
(?<test>1[0-9]+) \g'test'
还有define
语法。