at_takumi.mizutani
2022年8月5日 15時31分
本記事で紹介する正規表現
本記事で紹介する正規表現の概要について下表にまとめます。
各正規表現の詳細な説明についてはその後に説明します。
正規表現 | 説明 | 正規表現の例 | マッチする文字列 |
---|---|---|---|
() | ()内の文字列を1つのまとまりとして 正規表現を適用することができます |
Armadillo-(IoT)?.* |
Armadillo-IoT_G4 Armadillo-IoT_G3L Armadillo-640 |
| | グループ内のいずれかの文字列とマッチします | Armadillo-IoT_(A6E|G4) |
Armadillo-IoT_A6E Armadillo-IoT_G4 |
[] | []内で指定した文字のいずれかとマッチします | Armadillo-IoT_G[1234] |
Armadillo-IoT_G1 Armadillo-IoT_G2 Armadillo-IoT_G3 Armadillo-IoT_G4 |
- | 範囲指定した文字とマッチします | Armadillo-IoT_G[1-4] |
Armadillo-IoT_G1 Armadillo-IoT_G2 Armadillo-IoT_G3 Armadillo-IoT_G4 |
[^] | 指定した文字以外とマッチします | Armadillo-IoT_G[^1-2] |
Armadillo-IoT_G3 Armadillo-IoT_G4 |
\ | 正規表現文字とマッチします | \*Armadillo\* | *Armadillo* |
文字列のグループ化
()を使用すると、()内の文字列を1つのまとまりとして正規表現を適用することができます。
以下の例では、"IoT"をグループ化し、そのグループが0個、又は1個存在する文字列とマッチすることになるので、Armadillo-IoT_G4、Armadillo-IoT_G3L、Armadillo-640、等とマッチします。
例
正規表現
Armadillo-(IoT)?.*
マッチする文字列
Armadillo-IoT_G4 Armadillo-IoT_G3L Armadillo-640
いずれかの文字列とのマッチ
()と|を組み合わせて使用すると、グループ内のいずれかの文字列とマッチします。
以下の例では、A6EかG4のいずれかとマッチします。
例
正規表現
Armadillo-IoT_(A6E|G4)
マッチする文字列
Armadillo-IoT_A6E Armadillo-IoT_G4
いずれかの文字とのマッチ
[]を使用すると、[]内で指定した文字のいずれかとマッチします。
以下の例では、1, 2, 3, 4とマッチすることになるので、G1、G2、G3、G4とマッチします。
例
正規表現
Armadillo-IoT_G[1234]
マッチする文字列
Armadillo-IoT_G1 Armadillo-IoT_G2 Armadillo-IoT_G3 Armadillo-IoT_G4
また、-(ハイフン)を使用することで文字の範囲指定をすることもできます。
以下の例では、1〜4の文字とマッチすることになるので、G1、G2、G3、G4とマッチします。
例
正規表現
Armadillo-IoT_G[1-4]
マッチする文字列
Armadillo-IoT_G1 Armadillo-IoT_G2 Armadillo-IoT_G3 Armadillo-IoT_G4
^を使用すると指定した文字以外とマッチします。
以下の例では、1〜2以外の文字とマッチすることになるので、G3、G4とマッチします。
例
正規表現
Armadillo-IoT_G[^1-2]
マッチする文字列
Armadillo-IoT_G3 Armadillo-IoT_G4
正規表現用文字とのマッチ
ここまで紹介してきた正規表現の文字は特別な意味をもっており、そのままではその文字自体を探すことができません。
そういった特別な文字を調べるためには\(バックスラッシュ)を使用します。
以下の例では、*Armadillo*とマッチします。
例
正規表現
\*Armadillo\*
マッチする文字列
*Armadillo*