Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.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:preg_替换#符号_Php_Regex - Fatal编程技术网

PHP:preg_替换#符号

PHP:preg_替换#符号,php,regex,Php,Regex,我正在循环使用preg_replace替换的单词列表。以下是我正在使用的代码: foreach ( $words->Reserved as $reserved ) $code = preg_replace( ( '/\b(' . $reserved . ')\b/' ), ( '<cs_reserved>' . $reserved . '</cs_reserved>' ), $code ); foreach($words->保留为$Reserved) $c

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

foreach ( $words->Reserved as $reserved )
    $code = preg_replace( ( '/\b(' . $reserved . ')\b/' ), ( '<cs_reserved>' . $reserved . '</cs_reserved>' ), $code );
foreach($words->保留为$Reserved)
$code=preg_replace(('/\b('.$reserved.)\b/),('.$reserved.'),$code);
除非
$reserved
包含
#
符号,否则上面使用的表达式工作正常。我尝试使用括号(如上所示),但没有帮助

我不太擅长正则表达式,所以上面的内容可能不太理想,但它确实满足了我的项目需要


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

使用
preg\u quote

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

使用
preg\u quote

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

+1表示答案,以及“哦,整洁”效果。我甚至不知道它的存在,但很高兴知道。您应该添加
/
作为第二个参数。它似乎没有任何效果。。。即使是亚历克斯的建议,答案为+1,效果“哦,很好”。我甚至不知道它的存在,但很高兴知道。您应该添加
/
作为第二个参数。它似乎没有任何效果。。。即使是亚历克斯的建议。