1

のような bbcodes を検索する php の方法はありますか[b][/b]

たとえば、終了タグがない場所は? たとえば、メール サブスクリプションでテキスト返信のスニペットを表示すると、メール サブスクリプションが切り捨てられ、開いたままになるx characters可能性があります。BB-Code

PHP で使用します。

4

2 に答える 2

1

bbcode 文字列を解析できます。非常に複雑ですが、単純なアルゴリズムを実装して構文解析を提供できます。このようにして、タグが閉じられていない、タグを閉じる際の順序が間違っているなどのすべてのエラーを取得できます。次に例を示します。

[b] 
    [i] 
    [/b]
[/i]

最も簡単な方法:

  1. タグリストを用意する ( [b], [i] etc)
  2. 最初のタグを検索してスタックに追加する
  3. 探し続けて、さらに開始タグがある場合は、それらもスタックにプッシュします。
  4. 終了タグが見つかったら、スタックの一番上にあるものを確認します。正しい開始タグがあるはずです。そうでない場合は、探しているものが見つかります。終了タグが適合する場合は、最後の要素をポップして解析を続けることができます。
于 2013-01-18T12:16:45.950 に答える