繁体   English   中英

正则表达式匹配并替换BB代码报价

[英]Regex to match and replace BB code quote

我正在寻找匹配这样的字符串:

[quote12445555=Me]Some \n Quote[/quote12445555]

并替换为:

<blockquote>Some \n Quote</blockquote>

我为此正则表达式如下:

!\[quote(\d+)=(\w+)\](.*|\r\n|\n)\[\/quote(\d+)\]!

取而代之:

<blockquote>$3</blockquote>

但这似乎不起作用

任何帮助或建议,将不胜感激。

$quotes = preg_replace('%\[(quote\d+)=([^\]]+)\]([^[]+)\[/\1\]%', '<blockquote>$3</blockquote>', $quotes);

这似乎在我的测试中起作用:

\[quote[0-9]+=[a-zA-Z0-9]+\]((.|\n)*)\[/quote[0-9]+\]

尝试将(.*|\\r\\n|\\n)更改为(.|\\r\\n|\\n)*

是否需要转义正斜线? \\/

我的替换字符串是: <blockquote>$1</blockquote>

仅供参考,正确的正则表达式为:

'!\[quote(\d+)\=(\w+)\](.+?)\[\/quote(\d+)\]!is'

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM