我注意到有些用户在PHP正则表达式中使用@ vs"/",两者之间有区别吗?我假设它是用户首选项来处理字符串中的"/".
$body = preg_replace("@<script[^>]*>.+</script[^>]*>@si", "", $body);
Run Code Online (Sandbox Code Playgroud)
VS
$body = preg_replace("/<script[^>]*>.+<\/script[^>]*>/si", "", $body);
Run Code Online (Sandbox Code Playgroud)
分隔符可以是任何非字母数字,非反斜杠,非空白字符.
所以基本上有使用斜线或没有区别@或#.但请记住,所选分隔符不得出现在正则表达式中,否则您将需要转义该字符.
提示:由于PCRE允许any non-alphanumeric, non-backslash, non-whitespace作为分隔符,因此当您无法预测正在使用的正则表达式的内容时,最好将控制字符用作分隔符.见下面的例子:
$repl = preg_replace('^K^foo^K', 'bar', 'foo.txt' );
Run Code Online (Sandbox Code Playgroud)
这里的代码使用的是一个控制字符^K(ctrl-V-K在shell上输入)
| 归档时间: |
|
| 查看次数: |
94 次 |
| 最近记录: |