こんにちわ、マイケルです。
今回は正規表現についてお話します。
難しい感じしますけど簡単なやつだけでも覚えとけば、活用する機会って結構あると思います。
目次
正規表現とは?
異なる文字列を特殊文字や記号を使って、一つの文字列で表現する仕組みです。
そして、その文字列で表現した部分を検索し、他の文字列に置換する事が出来ます。
こんなとき、なんかスタンドが使えれば..
例えば…
あなたの元へクライアントから、以下のような依頼がきました。
- サイトすべての「頂きます」、「戴きます」を「いただきます」に統一
- サイトすべての料金表示を「¥」から「円」に表記に統一
この依頼、期限が今日中です。
でも、今日はディナーの約束があって残業したくないです(>_<)
サイトのページ数は膨大で、どこに何があるがよくわかりません。
1ページずつ確認してたら発狂します…
ここぞ正規表現です。
実際にやってみる
まず、正規表現をサポートしているテキストエディタを開きます。
ここでは、EmEditorで説明します。
置換の正規表現を使用するにチェックを入れます。
検索する文字列に使う正規表現(EmEditorの場合)
* | 0回以上の繰返し |
---|---|
? | 0回か1回の繰返し |
*? | 0回以上の繰返しで最短一致 |
\s | 空白 |
\S | 空白以外 |
\d | 数字 |
\t | tab |
\n | 改行 |
(A) | グループ化 |
(A|B) | AかB |
{7} | 7回の繰返し |
{7,} | 7回以上の繰返し |
{3,7} | 3回から7回の繰返し |
[ABC] | AかBかC |
[^ABC] | AでもBでもCでもない |
※\が\になったり、エディタによって異なる場合があります。
頂きます」「戴きます」を、「いただきます」に統一
検索する文字列
頂きます|戴きます
置換する文字列
いただきます
料金表示を「¥」から「円」に表記に統一
検索する文字列
¥(\d{1,3}(,\d{3})*)
置換する文字列
¥1円
こんな感じで、作業が大幅に楽にできます。
なによりも、人間でなく機械がやりますので正確に作業できます。
高機能なエディタは、ディレクトリごとに検索置換出来るみたいです。
ぜひ活用して下さい。