行末にある全角スペース文字を除去する

さて、今回は「$(ドルマーク)」を使ってみましょう。行末にマッチする「$」は、「、」「。」など文末に用いる句読点の制御など、様々な場面に活用できるメタ文字です。ただし「$」は、プログラミング言語やアプリケーションへの実装形態、使用環境によって動作が異なります。たとえばUNIX系テキストエディタで「$」を正規表現として検索すると、「ABC」の「C」の部分が対象となり、秀丸の場合は、改行コードの直前がマッチするため、秀丸以外のツールをお使いの方はご注意ください。

まずは簡単なところで、"文末にある全角スペース文字を除去"します。全角スペースひとつであれば「□$(□は全角スペース)」と指定するだけですが、文末に全角スペースがいくつあるかわかりません。それらを個別に指定するのは面倒ですので、「+(プラス)」というメタ文字を併用します。

同メタ文字は前号で用いたメタ文字「.(ピリオド)」と同じく、改行を除く任意の文字にマッチするものです。ただし、「.」は任意の一文字でしたが、「+」は直前の文字列が1回以上繰り返す際に使用します。つまり、「□+$(□は全角スペース)」は、ひとつ以上の全角スペースすべてにマッチするのです。もちろん半角スペースが続く場合は「 +$」と全角スペース部分を半角に変更すればきれいに削除できます。

正規表現

検索:□+$
置換:なし

Before


1 中原 中也□        ※「□」は全角スペース
2 夏目 漱石□□       ※「□」は全角スペース
3 南部 修太郎□□□ ※「□」は全角スペース

After


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