仕事はかどる正規表現!

仕事では、他人の書いた文書をいじくるのが日常なのですが、けっこう面倒なのが行末にくっついたタブやスペースです。Wordなんかで作業されている方は、初期設定ではこれが見えないので、無意識のうちにスペースバーなどを連打して余計な文字が入ってしまったりします。

タブや余計な空白は、DTP作業でのトラブルの元になったりしますので、できるだけ削除してしまうのが望ましいのですが、目視で手作業でやっていると、これがかなり面倒で取り忘れもあったりします。

そこで便利なのが正規表現。せっかくコンピュータを使っているのですから、こんなものはワンタッチでやってしまいましょう。

私の使っているテキストエディタは秀丸エディタです。秀丸エディタは有料ですが、正規表現をサポートしていますので、行末にくっついたタブやスペースを取るのは簡単なことです。

Hidemaru_editor_01

正規表現オプションを有効にして、検索文字列に[\t ]+$を、置換文字列にブランクを指定するだけです。

ちなみにこの意味は、\tはタブ文字(こういうのをメタ文字といいます)、そのあとの隙間は半角スペース、[ ]で囲うのはこれらのいずれかという意味、+はその繰り返し、$は行末、です。

行末の前にあるタブかスペースの繰り返しを、ブランクにしてね。という意味ですね。

タブやスペースには\sというメタ文字も使えるのですが、これだと改行文字もヒットしてしまいます。この場合、置換文字列に\nを指定して、取り去った文字群を改行文字に置き換えなければなりません。

メタ文字は、それが表す文字群を正しく認識していないとトラブルの元なので、\tなどはっきりしているものを使った方が混乱は少ないです。

こんなことで、不毛なカーソル操作や削除キーの連打がいらなくなるのですから、ありがたいですよね。

多くの人が使うMicrosoft Wordでもこういうことはできますが(ワイルドカード)、実際にやってみるとなかなかうまくいきません。Wordについては、うまくいったらまた記事にしたいと思います。

コメント