正規表現
特殊文字列
. ^ $ [ ] * + ? | ( )
→メタ文字列
メタ文字列を単なる文字として使う場合は[\]を前に足す
\. \^ \$ \[ \] \* \+ \? \| \( \) \\
□とにかく何でもいい1文字[.]
半角の[.]で とにかくなんでもいい1文字を表現
ex. 私は...が..→私は早起きが苦手
□行の先頭と最後[^$]
行の先頭や最後にのみ存在する文字列を検索したい場合に[^$]
ex. ^ありがとう→ありがとうから始まるもの
ありがとう$→ありがとうで終わるもの
□同じ文字の繰り返し[* + ?]
同じ文字の繰り返しを表す正規表現は [*]、[+]、[?]の3つ
・[*]:[*]の直前の文字が0個以上連続するか
ex. おー*い→おい、おーい、おーーーい
・[+]:[+]の直前の文字が1個以上連続するか
ex. おー+い→おーい、おーーーい
・[?]:[?]の直前の文字が0個か1個だけ存在するか
ex. Windows?→Window、Windows
□何でもいい文字の連続[.*]
[* + ?]は[.]と併用可
ex. コーヒーが好き.*。→コーヒーが好きです。、コーヒーが好きかもね。
[.]が[*]であるもの→何でもいい1文字が0個以上連続するもの
□いずれかの文字列[|]
| で区切られた文字列のいずれかの文字列が存在するもの
ex. hoge|piyo→hoge、piyo
□指定した文字のどれか[[]]
[]中のどれか1つに合致するもの
ex. 今日は[晴曇雨]です→今日は晴です
A[A-Z]C→ABC
1[0-9]8→108
A[^A-Z0-9]Z→A−Z
[]の中で^→XX以外→2番目の文字はアルファベットと数字以外の文字
□グループ化[()]
まとめて数文字単位で処理
ex. (じゃ)+ーん→じゃーん、じゃじゃーん
明日(ぼく|わたし)は帰宅します→明日ぼくは帰宅します、明日わたしは帰宅します
ref:
http://www.mnet.ne.jp/~nakama/
. ^ $ [ ] * + ? | ( )
→メタ文字列
メタ文字列を単なる文字として使う場合は[\]を前に足す
\. \^ \$ \[ \] \* \+ \? \| \( \) \\
□とにかく何でもいい1文字[.]
半角の[.]で とにかくなんでもいい1文字を表現
ex. 私は...が..→私は早起きが苦手
□行の先頭と最後[^$]
行の先頭や最後にのみ存在する文字列を検索したい場合に[^$]
ex. ^ありがとう→ありがとうから始まるもの
ありがとう$→ありがとうで終わるもの
□同じ文字の繰り返し[* + ?]
同じ文字の繰り返しを表す正規表現は [*]、[+]、[?]の3つ
・[*]:[*]の直前の文字が0個以上連続するか
ex. おー*い→おい、おーい、おーーーい
・[+]:[+]の直前の文字が1個以上連続するか
ex. おー+い→おーい、おーーーい
・[?]:[?]の直前の文字が0個か1個だけ存在するか
ex. Windows?→Window、Windows
□何でもいい文字の連続[.*]
[* + ?]は[.]と併用可
ex. コーヒーが好き.*。→コーヒーが好きです。、コーヒーが好きかもね。
[.]が[*]であるもの→何でもいい1文字が0個以上連続するもの
□いずれかの文字列[|]
| で区切られた文字列のいずれかの文字列が存在するもの
ex. hoge|piyo→hoge、piyo
□指定した文字のどれか[[]]
[]中のどれか1つに合致するもの
ex. 今日は[晴曇雨]です→今日は晴です
A[A-Z]C→ABC
1[0-9]8→108
A[^A-Z0-9]Z→A−Z
[]の中で^→XX以外→2番目の文字はアルファベットと数字以外の文字
□グループ化[()]
まとめて数文字単位で処理
ex. (じゃ)+ーん→じゃーん、じゃじゃーん
明日(ぼく|わたし)は帰宅します→明日ぼくは帰宅します、明日わたしは帰宅します
ref:
http://www.mnet.ne.jp/~nakama/
