ブログ

正規表現の使い方1(任意の文字とのマッチ)

at_takumi.mizutani
2022年8月2日 10時05分

本記事で紹介する正規表現

本記事で紹介する正規表現の概要について下表にまとめます。

各正規表現の詳細な説明についてはその後に説明します。

正規表現 説明 正規表現の例 マッチする文字列
. 任意の1文字とマッチします Armadillo-IoT_G. Armadillo-IoT_G3
Armadillo-IoT_G4
? ?の前の文字が0個、又は1個存在する文字列とマッチします Armadillo-IoT_A6E? Armadillo-IoT_A6
Armadillo-IoT_A6E
^ ^より後ろの文字列と一致する文字列とマッチします ^Degu Degu_G3
Degu_A6
$ $より前の文字列と一致する文字列とマッチします 40$ Armadillo-640
Armadillo-440
Armadillo-840

任意の1文字とのマッチ

.(ドット)を使用すると、任意の1文字とマッチします。

以下の例では、"G○"とマッチすることになるので、G3、又はG4とマッチします。

正規表現
Armadillo-IoT_G.
マッチする文字列
Armadillo-IoT_G3
Armadillo-IoT_G4

また、2回ドットを使用することで任意の2文字とマッチさせることもできます。

以下の例では、"○○0"とマッチすることになるので、640、610、460、等とマッチします。

正規表現
Armadillo-..0
マッチする文字列
Armadillo-640
Armadillo-610
Armadillo-460

直前の文字が0/1個存在する文字列とのマッチ

?を使用すると、?の前の文字が0個、又は1個存在する文字列とマッチします。

以下の例では、?の前の"E"が0個、又は1個存在する文字列とマッチすることになるので、A6、又はA6Eとマッチします。

正規表現
Armadillo-IoT_A6E?
マッチする文字列
Armadillo-IoT_A6
Armadillo-IoT_A6E

前方一致文字列とのマッチ

^を使用すると、^より後ろの文字列と一致する文字列とマッチします。

以下の例では、"Degu"が先頭に存在する文字列とマッチすることになるので、Degu_G3、又はDegu_A6とマッチします。

正規表現
^Degu
マッチする文字列
Degu_G3
Degu_A6

後方一致文字列とのマッチ

$を使用すると、$より前の文字列と一致する文字列とマッチします。

以下の例では、"40"が末尾に存在する文字列とマッチすることになるので、640、440、840、等とマッチします。

正規表現
40$
マッチする文字列
Armadillo-640
Armadillo-440
Armadillo-840

正規表現についての記事

  1. 本記事
  2. 正規表現の使い方2(連続文字とのマッチ)
  3. 正規表現の使い方3(OR条件を用いたマッチ)
  4. 正規表現の使い方4(grepによるファイル内文字列の検索)
  5. 正規表現の使い方5(sedによるファイル内文字列の加工)