1.はじめの一歩・正規表現
シェルやスクリプト言語を始める前に避けては通れない正規表現について勉強しておきたいと思います。
正規表現だけで1冊の本になるくらい内容はあり深く掘り下げると切がないので基本的な10種類のメタキャラクタについてのみ備忘録として残したいと思います。
| NO |
文字 |
適合するもの |
| 1 |
\(¥) |
次に来る文字自身の意味を取り出す |
| 2 |
^ |
文字列のはじめ |
| 3 |
$ |
文字列のおわり |
| 4 |
. |
任意の1文字 |
| 5 |
[ ] |
[ ]でくくられた文字の集まり(文字クラス)の内の任意の1文字 |
| 6 |
| |
二者択一を指定するために用いられる選択演算子 |
| 7 |
( ) |
連接演算子 |
| 8 |
* |
適合する部分文字列のゼロ個以上の並びからなる任意の文字列 |
| 9 |
+ |
適合する部分文字列の1個以上の並びからなる任意の文字列 |
| 10 |
? |
空列が適合する任意の文字列 |
注:文字は全て半角文字です。
■使用例
| 例 |
適合するもの |
| ^a |
文字列の最初にあるa |
| ^..$ |
ちょうど2文字からなる文字列 |
| [ab]c |
acまたはbc |
| a[0-9] |
a0,a1,a2,a3,a4,a5,a6,a7,a8,a9のいずれか |
| ab*c |
ac,abc,abbc,abbc,・・・・・・のいずれか |
| ab+c |
abc,abbc,abbbc,・・・・・・のいずれか |
| ab?c |
ac,abcのいずれか |
| \^[0-9]+$/ |
数字だけからなる任意の行 |
| \^[A-Z]$|^[a-z][A-Z]$/ |
英大文字、あるいは英小文字と英大文字の並び |
|