「正規表現(せいきひょうげん)」。コンピュータに触れている方なら、一度は耳にしたことがある言葉ではないでしょうか。正規表現とは、複雑に絡み合う文字の数々を、ひとつの文字列で表現する方法のひとつで、日本でパーソナルコンピュータが普及する以前から、プログラミング環境を中心に普及してきました。

一見すると「自分はプログラミングしないから関係ない」と思われるかもしれませんが、正規表現は英字だけなく、2バイト文字である日本語でも活用できるため、テキストエディタやワードプロセッサなど、様々な場面で活用することが可能です。そこで初心者向けの正規表現の活用方法を紹介していきます。

前述のとおり正規表現は、様々なプログラミング言語やアプリケーションに実装されているものの、その実装時期により表現方法が若干異なる"方言"を持っています。本来はすべてのプログラミング言語やアプリケーションの差異を紹介したいのですが、冗長になるため本稿では、メジャーなテキストエディタである「秀丸」の正規表現を例に紹介します。

さて、1回目は簡単なところで、文書の行頭を加工する正規表現例にチャレンジしてみましょう。まずは何行かに渡って箇条書きの文書があるとします。

1 中原 中也
2 夏目 漱石
3 南部 修太郎

この文書の行頭に箇条書きであることを示す「・」を追加するには、以下の手順を実行してください(図1)。この検索文字に用いた「^(キャレット)」は、行頭を指定するメタ文字のため、「第1条」の前に「・」が追加されます。

図1 秀丸の場合は[検索]メニューから[置換]を選んで(もしくは[Ctrl]+[R]キーを押す)、「検索」に正規表現の検索文字、「置換」に同じく置換文字を入力し、[正規表現]にチェックを入れてから[全置換]ボタンをクリックします。

正規表現

検索:^
置換:・

Before

1 中原 中也
2 夏目 漱石
3 南部 修太郎

After

・1 中原 中也
・2 夏目 漱石
・3 南部 修太郎