0

のような正規表現が必要です

/<script[^>]*>([\\S\\s]*?)<\/script>/img 

特定の種類のスクリプトに一致しない限り、スクリプト タグを置き換えるために使用するものです。アプリにはカラー スキームがあり、それを通過する必要がありますが、それ以外の注入は削除する必要があります。

これは許可されています

<script type="colorScheme">..</script>

他のものはすべて削除する必要がありますが、正しい正規表現に完全に到達することはできません。これを dom ノードに変換することもできません。

ドキュメントフラグメントは、head と head に含まれるタグを保持しません。コメントの皆さん、Internet Explorer で HTML ドキュメント全体をドキュメント フラグメントにロードできますか?を参照してください。

ありがとうございます!

4

1 に答える 1

0

私の理解では、必要なのは XXX が有効な値のセットになる場所に一致する正規表現です。

その場合は、次のような正規表現が必要です。

/<script type="(value1|value2|value3)">(.*?)<\/script>/img

Javascript の場合:

var regexp = /<script type="(value1|value2|value3)">(.*?)<\/script>/img;
var match = regex.exec(regexp);
console.log('type: ' + match[1]);
console.log('body: ' + match[2]);

それが役立つことを願っています:)

于 2012-10-03T20:17:50.743 に答える