Div内のすべてのjQuery「done」属性から4000行のHTMLファイルを削除したいと思います。
<DIV class=menu done27="1" done26="0"
done9="1" done8="0" done7="1"
done6="0" done4="20">
次のように置き換える必要があります。
<DIV class=menu>
この実験 この正規表現でそれを行うことができます:
[ ^]done[0-9]+="[0-9]+"
Notepad ++ 5.6.8 Unicodeを使用し、ANSIでエンコードされたファイルを使用して、この正規表現を[検索対象]フィールドに入力します。スペースで始まる5つのオカレンスを置き換えるだけで、行の先頭から始まる2つのオカレンスを見逃します。
キーワードで始まるHTML要素のすべての属性を削除する正規表現を作成するにはどうすればよいですか?
拡張「\ n」を「LINEBREAK」に置き換えます
これらのタイムリーな返信をありがとうございました。あなたのアドバイスに従って、これが私がしたことです:
「正規表現」の下で、次の各オカレンスを置き換えました。
done[0-9]*="[0-9]*"
(「完了する」前に見出しスペースがあることを確認するように注意してください
そしてトレーリングスペースがありません!以下を参照)
空の文字列
リコールとメモ:
簡単な方法は次のとおりです。
最初の行を除く各行の先頭で文字列をプラグインします。
私もNotepad ++が好きですが、やり直しは本当に苦痛です。 Notepad ++の使用を主張する場合は、次のことを試してください。
done[0-9][0-9]*=\"[0-9][0-9]*\"
空の文字列を使用(正規表現の前に必ず1つのスペースを入れてください)出来上がり!あまりきれいではありませんが、動作します; o)
その後、人間が読める形式にしたい場合は、HTMLTidy関数を使用できます。
あなたはほとんどそれを持っていました!残念ながら、Notepad ++の完全なソリューションは3ステップのプロセスである必要があります。
正規表現の検索/次の検索に置き換えます:\<done[0-9]+="[0-9]+"[ ]*
もちろん、replaceフィールドは空のままにして、一致するものをすべて削除するだけです。 (Notepad ++では正規表現の理解\<
は「単語の始まり」を表します。)
以前の検索/置換の影響を受けるテキストの部分を選択します。ドキュメント全体を選択する必要はありません。
改行を削除します。 Ctrl-Fを押して[検索/置換]ダイアログを再度表示し、今度は[正規表現]ではなく[拡張]検索モードを選択します。ドキュメントの形式に応じて、次のいずれかを検索します\n
または\r\n
。ここでも、置換フィールドは空である必要があります。また、「選択中」チェックボックスがチェックされていることを確認してください。
「すべて置換」をクリックすると完了です。
恐れ入りますが、Notepad ++ Regexではそれができません
Scintilla正規表現エンジンを使用するNotepad ++は、行ごとに基づいているため、複数行の検索/置換は実行できません。
Scintillaでは、正規表現の検索は1行ごとに行われるため(行末の文字が削除されるため)、\ rと\ nが一致することはありません。