您好我正在调整此正则表达式:
/\[quote\](.+?)\[\/quote\]\r\n/is
基本上忽略了新的行(基本上我希望我的报价系统在引用bbcode之后删除任何新行,以阻止引用后出现双重空格。
目前我只是将其作为替换:
$replace = "<div class=\"quote\"><span class=\"strong\">Quote</span><br />$1</div>";
所以它直接删除了新行,但是如果引号代码是页面上的最后一行并且后面没有新行,则会中断。
答案 0 :(得分:0)
想出一个简单的方法:
$body = str_replace("[/quote]\r\n", '[/quote]', $body);
在文本中检查之前删除它们。简单的解决方案,没有大惊小怪。
答案 1 :(得分:0)
在最后添加一个非捕获组,如下所示:
/\[quote\](.+?)\[\/quote\](?:\r\n)*/is
或简单的角色类:
/\[quote\](.+?)\[\/quote\][\r\n]*/is
也可以抓住单独的\n
休息。