Opensource.comは5月18日(米国時間)、「Getting started with regular expressions|Opensource.com」において、正規表現の基本的な使い方を紹介した。Linuxに限らずmacOSやFreeBSDなどUNIX系オペレーティングシステムでは、多くのコマンドが正規表現に対応している。すべてのOSで共通の正規表現を利用できるわけではないが、基本的な正規表現表記は同一であることが多い。
紹介されている主な正規表現は次のとおり。
文字 | 繰り返し指定 | サンプル |
---|---|---|
∗ | 0またはそれ以上 | ab∗ - aやab、abb、abbbなど |
+ | 1またはそれ以上 | ab+ - abやabb、abbbなど |
? | 0または1 | ab? - aまたはab |
{n} | n | ab{2} - abb |
{n,} | n以上 | ab{2,} - abbやabbb、abbbbなど |
{n,y} | n以上y以下 | ab{1,3} – ab、abb、abbb |
文字 | 意味 | 文字 | 意味 |
---|---|---|---|
^ | 行頭 | $ | 行末 |
[a-z] | 小文字アルファベット | [A-Z] | 大文字アルファベット |
[0-9] | 数字 | ||
. | 任意1文字 | ||
\s | 空白 | \S | 空白以外 |
\w | 文字 | \W | 文字以外 |
\d | 数字 | \D | 数字以外 |
記事ではシェルにおけるグラブ表記、Viにおける検索、sedによる置換などにおいて利用する方法を紹介している。Viでは、コマンドモードで「/」または「?」を入力することで、後方検索や前方検索が行える。
UNIX系のコマンドを使う際は、正規表現を使いこなせるかどうかが作業効率に大きく影響を及ぼす。記事で紹介されている基本的な正規表現を利用するだけでも、さまざまな作業の自由度が向上するはずだ。