PHP:preg_replace#符号

时间:2011-04-17 07:16:50

标签: php regex

我正在循环使用preg_replace替换的单词列表。这是我正在使用的代码:

foreach ( $words->Reserved as $reserved )
    $code = preg_replace( ( '/\b(' . $reserved . ')\b/' ), ( '<cs_reserved>' . $reserved . '</cs_reserved>' ), $code );

上面使用的表达式非常有效,除非$reserved包含#符号。我尝试使用括号(如上所示),但没有帮助。

我不是很擅长正则表达式,所以上面的内容可能并不理想,但它完全符合我的项目需要做的事情。

任何帮助将不胜感激。 :)

1 个答案:

答案 0 :(得分:3)

使用preg_quote

$code = preg_replace( ( '/\b(' . preg_quote($reserved) . ')\b/' ), ( '<cs_reserved>' . $reserved . '</cs_reserved>' ), $code );