PHP:如何修复我的 preg_replace 代码
如果我有一个像
$str = "Hello [Page 1] World [Page 23] Hello [Page 35] World [Page 624]";
And 我想删除“[Page #]”的所有实例的
字符串,我将如何做到这一点?
这是我到目前为止所得到的......
preg_replace('[Page [0-9]]', '', $str);
If I have a string like
$str = "Hello [Page 1] World [Page 23] Hello [Page 35] World [Page 624]";
And I want to remove all instances of "[Page #]"
How would I go about doing that?
Here's what I've got so far...
preg_replace('[Page [0-9]]', '', $str);
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
请记住,
[
和]
是类分隔符。当您想将它们用作文字时,您需要首先对它们进行转义(前缀为\
)。所以:可能是你最好的选择。用
/
包围该模式,在数字范围中添加+
以匹配“1+ 数字”,最后的i
表示不区分大小写匹配(P 或“Page”中的 p)(如果这不是您的意图,请删除)。Remember that
[
and]
are class delimiters. When you want to use them as literals you need to escape them (prefix with\
) first. So:is probably your best bet. Surround the pattern with
/
, add a+
to your number range to match "1+ numbers", and the finali
means case-insensitive match (P or p in "Page") (remove if that's not your intent).也有效。 \d 是数字字符的简写。
works, too. \d is shorthand for number-chars.