input type="text" の class を根こそぎ変更する


置換前サンプル
1つめ:<input type="text" name="a" value="ところてん" class="large"><br>
2つめ:<input type="checkbox" name="b" value="アメ" class="large">アメ
        <input type="checkbox" name="b" value="ガム" class="large">ガム<br>
3つめ:<input type="text" name="c" size="10" class="small"><br>
4つめ:<a class="jon">ジョン</a><br>
5つめ:<input type="text" name="e" class="middle" value="そば"><br>

(?\tag-number) ヒットした扱いにするタグ指定 」というのを使ってみましょう。
以下、秀丸ヘルプより
(?\tag-number)の形式を使うことで、検索でヒットした扱いにする部分を、検索パターン中のタグの指定で行うことが出来ます。

例えば、aaabbbcccという文字列を検索しつつも、ヒットした扱いにしたいのがbbbだとすると、

(?\2)(aaa)(bbb)(ccc)
 と指定すればいいです。
ようは、検索結果の中から、一部分だけ置換対象にできるわけです。


検索:

この正規表現だと、赤字の部分にマッチします。
置換前サンプル
1つめ:<input type="text" name="a" value="ところてん" class="large"><br>
2つめ:<input type="checkbox" name="b" value="アメ" class="large">アメ
        <input type="checkbox" name="b" value="ガム" class="large">ガム<br>
3つめ:<input type="text" name="c" size="10" class="small"><br>
4つめ:<a class="jon">ジョン</a><br>
5つめ:<input type="text" name="e" class="middle" value="そば"><br>

で、その中から class="xxxx" だけ置換したいわけです。
ということで

検索:
置換:

 置換後
1つめ:<input type="text" name="a" value="ところてん" class="tanaka"><br>
2つめ:<input type="checkbox" name="b" value="アメ" class="large">アメ
        <input type="checkbox" name="b" value="ガム" class="large">ガム<br>
3つめ:<input type="text" name="c" size="10" class="tanaka"><br>
4つめ:<a class="jon">ジョン</a><br>
5つめ:<input type="text" name="e" class="tanaka" value="そば"><br>

(?\1) の指定で、1番目の () に囲まれた部分が置換の対象となります。
無事 type="text" の class だけを tanaka に置換できました。


ちなみに、以下のやり方でも結果は同じになります。

検索:
置換:

 置換後
1つめ:<input type="text" name="a" value="ところてん" class="tanaka"><br>
2つめ:<input type="checkbox" name="b" value="アメ" class="large">アメ
        <input type="checkbox" name="b" value="ガム" class="large">ガム<br>
3つめ:<input type="text" name="c" size="10" class="tanaka"><br>
4つめ:<a class="jon">ジョン</a><br>
5つめ:<input type="text" name="e" class="tanaka" value="そば"><br>