【開発】【正規表現】正規表現チートシート - j-komatsu/myCheatSheet GitHub Wiki
正規表現を用いて効率的に文字列を操作・検索するための基本構文と応用例をまとめます。
- 目的: 特定の文字列を検索。
-
構文:
pattern
-
使用例:
-
abc
という文字列を検索。abc
-
xyz
という文字列を検索。xyz
-
123
という文字列を検索。123
-
-
目的: 特殊な文字や意味を持つ記号を扱う。
-
構文:
特殊文字 説明 \.
任意の1文字 \d
数字 \w
英数字またはアンダースコア \s
空白文字 \b
単語境界 -
使用例:
- 任意の1文字を検索。
a.c
- 数字を検索。
\d+
- 単語境界を利用して単語を検索。
\bword\b
- 任意の1文字を検索。
-
目的: 文字列の繰り返しを指定して検索。
-
構文:
繰り返し 説明 *
0回以上の繰り返し +
1回以上の繰り返し ?
0回または1回 {n}
n回の繰り返し {n,}
n回以上の繰り返し {n,m}
n回からm回の繰り返し -
使用例:
-
a
が1回以上繰り返される文字列を検索。a+
-
b
が0回以上繰り返される文字列を検索。b*
- 正確に3回繰り返される
c
を検索。c{3}
-
-
目的: 行の開始や終了を指定して検索。
-
構文:
アンカー 説明 ^
行頭 $
行末 -
使用例:
- 行頭が
abc
で始まる文字列を検索。^abc
- 行末が
xyz
で終わる文字列を検索。xyz$
- 行頭と行末が同じ文字列である場合を検索。
^abc$
- 行頭が
-
目的: 部分一致を保存して再利用。
-
構文:
(pattern) \n
記号 説明 ()
グループ化とキャプチャ \1
最初のキャプチャにマッチ -
使用例:
- 同じ文字が連続する部分を検索。
(\w)\1
- 最初のキャプチャを参照する例。
(\d{3})-(\d{4}) \1
- 異なるグループを参照する例。
(\d{2})-(\d{2}) \2-\1
- 同じ文字が連続する部分を検索。
- 目的: 複数のパターンをまとめて検索。
-
構文:
(pattern1|pattern2)
-
使用例:
-
cat
またはdog
を検索。cat|dog
-
apple
、orange
、またはbanana
を検索。apple|orange|banana
- 数字または文字を含む部分を検索。
\d|\w
-
- 目的: 特定の文字集合を指定して検索。
-
構文:
[abc]
-
使用例:
-
a
、b
、またはc
のいずれかにマッチ。[abc]
- 任意の数字にマッチ。
[0-9]
- 小文字アルファベットにマッチ。
[a-z]
-
- 目的: 特定の文字を除外して検索。
-
構文:
[^abc]
-
使用例:
-
a
、b
、c
以外の文字にマッチ。[^abc]
- 数字以外の文字にマッチ。
[^0-9]
- 小文字以外の文字にマッチ。
[^a-z]
-
-
目的: 特定のパターンの前後を条件として指定して検索。
-
構文:
種類 構文 説明 肯定先読み (?=...)
指定パターンの前に一致 否定先読み (?!...)
指定パターンの前に不一致 肯定後読み (?<=...)
指定パターンの後に一致 否定後読み (?<!...)
指定パターンの後に不一致 -
使用例:
-
abc
の後に続くdef
を検索。abc(?=def)
-
123
の前にあるxyz
を検索。(?<=xyz)123
-
abc
の前にないdef
を検索。(?!abc)def
-
-
メールアドレスの検出:
[\w.%+-]+@[\w.-]+\.[a-zA-Z]{2,}
-
日本の電話番号の検出:
\d{2,4}-\d{2,4}-\d{4}
-
HTMLタグの検出:
<[^>]+>