通过RegEx剥离BBCode

时间:2011-04-22 19:31:18

标签: php parsing bbcode

我正在尝试设置一个将检测[quote] ??? [/ quote]的正则表达式,并将其删除。

这就是我所拥有的,但它不起作用:

$post['body'] = preg_replace("/\[quote\](.+?)\[\/quote\]/is", '', $post['body']);

有人能指出我正确的方向吗?

我还想在[quote] ??? [/ quote]之前或之后删除任何线刹。

2 个答案:

答案 0 :(得分:0)

这是我对你的剧本的测试:

$text = "I am trying to setup a regex that will detect [quote]???[/quote] and will remove it.\r\nThis is what I have but it is not working:";
$sentences = preg_replace("/\[quote\](.+?)\[\/quote\]/is", '', $text);
echo '<pre>'.print_r($sentences, true).'</pre>';

我的输出:

I am trying to setup a regex that will detect  and will remove it.
This is what I have but it is not working:

你可以看到:[quote] ??? [/ quote]已删除。

我认为你的问题在其他地方。检查$ post ['body']的值!

也许这是拼写错误而且你只是$ _POST ['body']?

答案 1 :(得分:0)

刚刚想出了我自己的问题。

$post['body'] = preg_replace("/\[quote\](.+?)\[\/quote\]/is", '', $post['body']); $body = trim(rtrim($post[0]['body']));