0

大量のHTMLページでは、次のようにすべての文字列を置き換える必要があります。

language[0].attributes[24].value;

これとともに:

language[0].getAttribute("attr"+24);

ここで、「24」は任意の数にすることができます。

Notepad ++の正規表現での検索と置換を使用してこれを行うことができると思いましたが、多くの試行錯誤の末、これまでのところ運がありませんでした。これを手動で行う必要はありません。

(これは、IE10にアップグレードしたときに、サポートしているWebページのすべてのテキストが壊れてしまったためです。定義上、XML属性は任意の順序にすることができ、新しいバージョンのIEではそれらを並べ替える必要があります。インデックスではなく名前で属性を参照します。)

ヘルプに感謝します。

4

4 に答える 4

3

次の正規表現を見つけます。

\.attributes\[(\d+)\]\.value

そしてそれを

.getAttribute("attr"+\1)

http://regexr.com?33b0j <-実際の動作を確認してください!

于 2013-01-07T21:33:51.853 に答える
0

一部のテキストエディタでは、ワイルドカード置換ツールを使用する必要があります。私は個人的にVSを使用しています。wordなどのMS-Officeプログラムにもその可能性があります。

于 2013-01-07T21:34:56.993 に答える
0

何を見つけるか:次のよう\.attribute\[(\d+)\]\.value;
に置き換えます:.getAttribute\("attr" + \1\);

(私のバージョンのNotepad ++の置換値の角かっこをエスケープする必要がありました)

于 2013-01-07T21:35:32.760 に答える
0

notepad++でテスト済み

language\[0\].attributes\[\s*(\d+)\s*\].value;

交換された

language[0].getAttribute\("attr"+\1\);
于 2013-01-07T21:38:11.833 に答える