正規表現を使用して、指定された文字列から禁止HTMLタグをフィルタリングしようとしています。はい、私は知っている、私は代わりにパーサーを使用するはずですが、この特定の問題は、この方法が速いです。Regex:論理を持つキャプチャグループを無効にする
アイデアは大丈夫なすべてのタグ(たとえば<span>, <b>, </br>
)をホワイトリストに登録し、禁止されているものと一致させることです。今まで私は次の式を思いついた。<a>
のような単一のcharタグではうまくいくが、<label>
のようなものはうまくいかない。事前に感謝しています。
どのタグでも動作するはずです。 '<\ /?(?!(label | span | br?)\ b)[^>] *> ' –
いいえ「」のように「
のような複数の文字ではなく、単一の文字で禁止されたタグのみと一致することです。 '? –