結城本の勉強(その5)
- 第7章 正規表現の基本
- 正規表現とは/ /で表されるもの(定義は大切。自分の中であいまいだった)
- /y/がマッチする文字列は"y"を含むもの(大文字と小文字を区別する)
- 文字列の内容がパターンとマッチするかどうか調べる演算子は =~ (なるほど。文字列=~/パターン/か)
- メタ文字^は「文字列のはじめにマッチする」という意味をもつ(なるほど)
- /^/はいかなる文字列にもマッチする
- メタ文字$は文字列の終わりにマッチする(なるほど、/yes$/のように使うのか)
- match0.plで練習(
って便利だなー、と実感した。いまさら) - メタ文字.は任意の一文字にマッチする(何か文字がなくてはいけない)
- ドットを文字として扱いたいときは正規表現の中で/\./と書く
- マッチした文字列を得る変数$&
- 文字クラス[0-9]、メタ文字\dは同じ意味(どちらも数字1文字にマッチする)
- メタ文字\wは、[a-zA-Z\d_]に対応する
- [^ ]は指定した文字集合以外の1文字を表す
- メタ文字?は、直前の文字があってもなくてもよい
- 正規表現中の?はメタ文字。?を文字として使うときは\?とする
- 正規表現の中ではカッコ()の中身は一まとまりのものとして扱われる
- メタ文字*、直前のものの0個以上の繰り返し(コマンドラインのワイルドカードとの違いに注意!)
- {N,M} 直前のものがN回以上M回以下繰り返したパターンを表す
- メタ文字.は改行にはマッチしない
- 修飾子/gをつけて/mgとし、ループにすることができる
次は第8章から。