php中的preg_replace问题

时间:2015-06-16 21:15:12

标签: php regex

我一直坚持使用正则表达式,我尝试了所有我能想到的解决方案,徒劳无功。 我的文本里面有不同类型的“标签”,例如:[[Category:Animals]]。“Category:”之后的单词可能不同(如“Category:School”),这就是我想要匹配的原因“ [[Category:...]]“从文本中删除该标记。当我在phpliveregex.com上尝试我的代码时,它可以正常工作,但一旦上传到服务器上,它就无法工作。

$text = '[[Category:Animals]]';
$pattern = '/\[\[Category:(.*?)\]\]/';
$intro = preg_replace($pattern, "", $text, $count);

当我显示$ count的结果以检查匹配时,结果为NULL。我尝试了不同的正则表达式,但仍然没有匹配...

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

$count应该是5th parameter in preg_replace。所以使用:

$intro = preg_replace($pattern, "", $text, -1, $count);

第4个参数实际上是limit,用于设置最大可能替换次数