Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/230.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 wordpress中的正则表达式假分隔符_Php_Regex_Wordpress - Fatal编程技术网

Php wordpress中的正则表达式假分隔符

Php wordpress中的正则表达式假分隔符,php,regex,wordpress,Php,Regex,Wordpress,我是正则表达式的新手,我有一个简单的疑问 我在wordpress中找到了这个代码 $self = preg_replace('|^.*/wp-admin/|i', '', $self); 根据。不允许作为分隔符 有人能解释一下代码吗?你试过了吗 从您的: 使用PCRE函数时,要求图案用分隔符括起来。分隔符可以是任何非字母数字、非反斜杠、非空白字符 因此,|是一个完全有效的分隔符。当您阅读该页面上的注释时,他们建议不要使用元字符(如|)作为分隔符,而应该在正则表达式中使用元字符 因为在您的示例

我是正则表达式的新手,我有一个简单的疑问

我在wordpress中找到了这个代码

$self = preg_replace('|^.*/wp-admin/|i', '', $self); 
根据
不允许作为分隔符

有人能解释一下代码吗?

你试过了吗

从您的:

使用PCRE函数时,要求图案用分隔符括起来。分隔符可以是任何非字母数字、非反斜杠、非空白字符

因此,
|
是一个完全有效的分隔符。当您阅读该页面上的注释时,他们建议不要使用元字符(如
|
)作为分隔符,而应该在正则表达式中使用元字符

因为在您的示例中没有替换(“|^.*/wp admin/| i”,“$self”)没有问题,它正在按预期工作

当您在正则表达式中有一个替换(例如,
preg_match(“|(F | F)oo |”,“Foobar”)
)时,您将得到一个警告“未知修饰符‘F’”,因为解释器认为正则表达式在第一个替换处结束

结论:允许但不建议使用正则表达式元字符,如
|
^
+
。。。作为正则表达式分隔符。