2

この問題を解決するための迅速な支援が必要です。

ホワイトリスト(変数)のタグを除いて、文字列からすべてのhtmlタグを削除したいと思います。

これまでの私のコード:

whitelist = 'p|br|ul|li|strike|em|strong|a', 
reqExp = new RegExp('<\/?[^>|' + whitelist + ']+\/?>');

問題は、多かれ少なかれうまく機能するが、たとえばホワイトリストの外からbと一致するために削除されないことです。bbr

私はさまざまなアプローチを試しましたが、正しい解決策が見つかりませんでした。正規表現に次のようなことを行うように指示するにはどうすればよいですか/.WITHOUT(smth)/(したがって、すべての一致は次のすべてを期待します)。

4

1 に答える 1

4

この正規表現を使用してください:-

<(?!/?(p|br|ul|li|strike|em|strong|a)(>|\s))[^<]+?>

ライブデモ

詳細については、要件を満たす私の以前の回答を参照してください。

于 2012-04-22T12:29:19.450 に答える