====== 03 Perl 正規表現 ====== 記号 意味 . 改行文字以外の任意の1文字 * 直前の1文字の0回以上の繰り返しに一致。直前の文字は正規表現でも構わない ^ 行の先頭 $ 行の末尾 [ ] かっこ内の任意の1文字に一致。ハイフン(-)で範囲指定もできる [^ ] かっこ内の任意の1文字に不一致。ハイフン(-)で範囲指定もできる + 直前の文字の1個以上の繰り返しに一致 ? 直前の文字の0または1文字に一致 {n} 直前の文字のn個の繰り返しに一致 {n,} 直前の文字のn個以上の繰り返しに一致 {,m} 直前の文字のm個以下の繰り返しに一致 {n,m} 直前の文字のn個以上,m個以下の繰り返しに一致 pattern1|pattern2 pattern1またはpattern2のいずれかに一致 (pattern) patternをグループ化する。マッチした内容は参照できる \ 正規表現に使われる記号を普通の文字として扱う 記号 意味 Hogege Hogegeに一致 [0-9] 1文字の数字に一致 [a-z] 1文字の小文字アルファベットに一致 [A-Z] 1文字の大文字アルファベットに一致 [0-9a-zA-Z] 1文字の数字またはアルファベットに一致 [0-9]{4}/[0-9]{1,2}/[0-9]{1,2} yyyy/mm/ddに一致(mmとddは1文字でもよい)。ただし,sedの置換などでは/記号を\/とエスケープする必要がある ^pattern$ 文字列patternだけを含む行 [Gg]rep Grepまたはgrep に一致 ^[^0-9] 行頭が数字でないもの ^.{10}$ 10文字の行 test|TEST testまたはTEST Woo* Woo,Wooo....に一致