PHP:如何修复我的preg_replace代码

时间:2011-02-18 05:14:26

标签: php preg-replace

如果我有像

这样的字符串
$str = "Hello [Page 1] World [Page 23] Hello [Page 35] World [Page 624]";

我想删除所有“[Page#]”

的实例

我将如何做到这一点?

这是我到目前为止所得到的......

preg_replace('[Page [0-9]]', '', $str);

3 个答案:

答案 0 :(得分:1)

请记住,[]是类别分隔符。如果要将它们用作文字,则需要先将它们转义(前缀为\)。所以:

/\[Page [0-9]+\]/i

可能是你最好的选择。使用/围绕模式,在您的数字范围内添加+以匹配“1+数字”,最后i表示不区分大小写的匹配(P或p在“Page”中) )(如果这不是你的意图,请删除)。

答案 1 :(得分:0)

preg_replace('/\\[Page [0-9]+\\]/', '', $str)

答案 2 :(得分:0)

/\[Page \d+\]/

也有效。 \ d是数字字符的简写。