どーも!marusukeです!
文字列パターンの表現方法である「正規表現」について説明します!
正規表現とは
正規表現は、特定のパターンに一致する文字列を見つけるためのパターン記述記法です
例えば、.(ピリオド)
は任意の1文字を表します。その他にも以下の正規表現があります
正規表現の記法
記法 | 説明 |
---|---|
^ | 文字列の開始を表します。 |
$ | 文字列の終了を表します。 |
. | 任意の単一文字にマッチします。 |
* | 直前の文字の0回以上の繰り返しにマッチします。 |
[abc] | 指定された文字(この場合はa、b、またはc)のいずれかにマッチします。 |
[^abc] | 指定された文字以外の文字にマッチします。 |
正規表現を使用したコマンド例
以下のtestFile.txt
にgrep
コマンドと正規表現を組み合わせて文字列を検索した例です
cat testFile.txt
Hello World!!
Hello World
ape
Hello
abc
def
^
の例: 文字列の開始に”Hello”があるかチェック
grep '^Hello' testFile.txt
Hello World!!
Hello World
Hello
$
の例: 文字列の終了が”World”であるかチェック
grep 'World$' testFile.txt
Hello World
.
の例: 任意の単一文字にマッチ (例えば “a.e” は “ape” にマッチする)
grep 'a.e' testFile.txt
ape
*
の例: 直前の文字の0回以上の繰り返しにマッチ (“lo*” は “l” にも “loo” にもマッチする)
grep 'lo*' testFile.txt
Hello World!!
Hello World
Hello
[abc]
の例: 指定された文字のいずれかにマッチ (“[abc]” は “a”, “b”, “c” のいずれかにマッチ)
grep '[abc]' testFile.txt
ape
abc
[^abc]
の例: 指定された文字以外の文字にマッチ (“[^abc]” は “abc” 以外の文字列にマッチ)
grep '[^abc]' testFile.txt
Hello World!!
Hello World
ape
Hello
def
以上です!
ここまで読んでいただきありがとうございました!
コメント