私は bbcode パーサーを構築しようとしていますが、一致が広すぎないようにする方法を見つけるのにかなりの問題があります。たとえば、次のように [list] to conversion を実装したいと思います。
\[list\](.*)\[/list\]
これに置き換えられます:
<ul>$1</ul>
これは正常に機能しますが、正規表現が最初のリストの開始タグと 2 番目のリストの終了タグに一致する 2 つのリストがある場合を除きます。したがって、この
[list]list1[/list] [list]list2[/list]
これになります:
<ul>list1[/list] [list]list2</ul>
本当に醜い出力を生成します。これを修正する方法について何か考えはありますか?