0

我需要一个简单的帮助:需要匹配:

[sometext]
[sometext value=1]
[sometext value=1 anothervalue=2]

使用 php 正则表达式并在整个 $content 变量中替换为 null

$content = str_replace('/??????/','',$content);

我应该用什么代替问号?

Ps ...有人知道傻瓜学习正则表达式的好资源吗?

4

1 回答 1

1

您应该使用的正则表达式应该类似于:

/\[[^\]]*\]/

它基本上分解为:

  • \[匹配左方括号。
  • [^\]]*匹配任何内容,直到下一个右方括号。
  • \]匹配结束方括号。

此外,您应该使用preg_replace, 因为str_replace不接受正则表达式。所以你最终得到:

$content = preg_replace('/\[[^\]]*\]/', '', $content);

您可以在 PHP 文档的PCRE regex syntax page 中找到有关 PHP 中使用的 regex 风格的大量信息。

于 2012-05-18T19:24:15.743 回答