Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/296.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 条件语句中的正则表达式替换_Php_Preg Replace_Expression - Fatal编程技术网

Php 条件语句中的正则表达式替换

Php 条件语句中的正则表达式替换,php,preg-replace,expression,Php,Preg Replace,Expression,php中是否有在条件语句中使用替换的方法?例如: 假设我有两个反向引用“1”和“2”,需要检查它们是否存在,以便执行两个模式中的一个,如下所示 (?(1|2)foo|bar) 我使用的是PHP5.2.14,因此没有逃避反向引用的好处。每次我尝试像这样的远程操作,我都会得到一个编译错误 是否有任何可能的解决方法,或者是在条件中执行条件的情况 问候 Chris据我所知,这没有语法。你所能做的就是: (?(1)foo|(?(2)foo|bar)) 正如我所想…谢谢你的回复。希望有一个更干净的方法,

php中是否有在条件语句中使用替换的方法?例如:

假设我有两个反向引用“1”和“2”,需要检查它们是否存在,以便执行两个模式中的一个,如下所示

(?(1|2)foo|bar)
我使用的是PHP5.2.14,因此没有逃避反向引用的好处。每次我尝试像这样的远程操作,我都会得到一个编译错误

是否有任何可能的解决方法,或者是在条件中执行条件的情况

问候


Chris

据我所知,这没有语法。你所能做的就是:

(?(1)foo|(?(2)foo|bar))

正如我所想…谢谢你的回复。希望有一个更干净的方法,但无论如何。可能重复的