我正在尝试创建一个正则表达式,以捕获BB代码,带有额外参数([url=http://]url[/url])的BB代码等,并与嵌套BB代码一起正常工作。

然后,我将从最内层开始递归解析BB代码。

到目前为止,这是我所拥有的,但是当我尝试匹配嵌套的BB代码时,它就会中断。

图案:

\[(.*)\b=?([^=].*)?\](.*)\[/\1\]


访问http://www.gskinner.com/RegExr/并尝试下面的模式和文字

尝试这个:

[b]sdfsdf[/b]

[b=extra]sdfsdf[/b]

[b=extra]left[u]middle[/u]right[/b]

最佳答案

您不能使用正则表达式来创建支持嵌套的解析器。您需要自己使用状态机来解析字符串。

或者,reuse existing code

关于c# - 嵌套BBCode的正则表达式,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1575775/

10-12 21:28