preg_replace中的斜杠

时间:2013-05-03 21:32:18

标签: php regex

我正在尝试阅读一些PHP代码,并想知道为什么preg_replace总是有斜杠。在正则表达式中,我用C ++编写,我不做同样的事情,并且想知道为什么

PHP:preg_replace('/blah/', '', $str)但在C ++中,我只用字符串"blah"制作正则表达式

我可以在这里澄清一下吗?什么是开始和结束斜杠?感谢

2 个答案:

答案 0 :(得分:6)

它们只是正则表达式分隔符。来自PHP manual documentation on Delimiters

  

分隔符可以是任何非字母数字,非反斜杠,非空格   字符。

     

经常使用的分隔符是正斜杠(/),哈希符号(#)和   波浪(~)。以下是有效分隔的所有示例   图案。

答案 1 :(得分:3)

它们是分隔符,允许您添加修饰符,例如/ blah / i用于不区分大小写的正则表达式。

在我知道的情况下,使用斜杠来自perl或shell / sed。

在php中,它们不是强制性的,因为你可以使用其他角色。例如,“!blah!i”也有效。还有一个带括号的特殊语法,因为你不需要转义它,所以它更不容易出错:“{blah} i”。