秀丸エディタで正規表現

今日、秀丸エディタの便利さにようやく気がついた。というのも、

<option>北海道</option>
<option>青森県</option>
<option>岩手県</option>
<option>宮城県</option>
<option>秋田県</option>
<option>山形県</option>
<option>福島県</option>
<option>茨城県</option>
<option>栃木県</option>
<option>群馬県</option>
etc...

以上のhtmlを、

<option value="北海道">北海道</option>
<option value="青森県">青森県</option>
<option value="岩手県">岩手県</option>
<option value="宮城県">宮城県</option>
<option value="秋田県">秋田県</option>
<option value="山形県">山形県</option>
<option value="福島県">福島県</option>
<option value="茨城県">茨城県</option>
<option value="栃木県">栃木県</option>
<option value="群馬県">群馬県</option>
etc...

以上のように書き換える作業があり、47都道府県とはいえ面倒くさいし何よりPCで解決できそうな単純作業はwebmasterはかなり嫌いだ。

そこで、秀丸エディタ正規表現を使った置換にチャレンジしてみた。

まず単純にマッチさせるには、で最短一致させればよい。この構文はこうだ。

<option>[^>]*</option>

そして、optionタグで囲まれた要素を取り出すため、秀丸のタグ付き正規表現の\fで区切る。

<option>\f[^>]*\f</option>

これで前方参照の\1でマッチ文字列を利用できる。置換文字列はこうだ。

<option value="\1">\1</option>

そしていよいよ、置換を実行する....実に見事に思い通りに置換してくれた。秀丸での正規表現を使った置換は初めてだったので、にわかに衝撃だった(正規表現自体もあまり理解していなかったこともあるが)。これはかなり便利だと認めざるを得ない。巷では「秀丸は手放せません」といった声をしばしば聞くことがあったが、おそらくこの正規表現の便利さが手放せないのではないかと思う。正規表現はHTMLの編集のみならず、プログラムや原稿書きまでテキストにまつわる編集作業全てに活用できるだろう。

なんとなく秀丸エディタを使っている諸氏は、正規表現について少し学んでみては如何だろう。以下に正規表現を学べるサイトを紹介する。