第8章 正規表現の詳細 練習問題 その3

そろそろ8章にとどめを。

3, スカラー変数名を示すような文字列にマッチするような正規表現

まず、$(ドル記号)がきて、その後が、英数字の大文字小文字と数字、そして_(アンダーバー)だけで構成されているような文字列。ただし、$(ドル記号)の直後に数字はだめ。

/^\$[a-zA-Z_][a-zA-Z0-9]*$/

ですね。

4, 同じワードが2回以上連続して登場するような文字列にマッチするような正規表現

ここは、詳説正規表現を一度は読んだものとしてはがんばりたい。まず、考えたのは、

/\b(\w+)(\s+\1\b)+/

という正規表現。+が括弧の中と外にいるのがなんか気持ち悪い。そこで解答をみてみると、意外にもほとんど合っていた!解答は、

/\b(\w+)(\s+\1)+\b/

です。\bを括弧から外に出しても問題ない。解説の長さの割に、自分は比較的すぐに解けたので満足。

て、8章の練習問題はほんと正規表現だけだったね。