正規表現って何ぞや!?

正規表現(Regular expression)(略:re,regex,regexp)

読み方:レジ・イー・エックス

一言で言うと...

文字列集合を1つの文字列で表現する方法

です。

 

どんな時に使うの?

・文字列の検索・置換

・有効なメールアドレスかどうか検証したいとき

 

 具体例

・新規登録画面で「user 123@example,com」と入力してきた場合に,無駄な半角スペースや@以降にカンマがあるので無効なメールアドレスとしてはじきたい時

参考 rails tutrial6.2.4

 

・膨大なデータの中から携帯電話番号を探したいとき

「-」で検索する?それだと郵便番号などの意図しない文字もヒットしてしまう。正規表現を利用することでデータの中から*パターンにマッチするデータを見つけ出すことができる。(*「パターン」とは,単に「文字の並び」のこと)

"0[789]0-?\d{4}-?\d{4}というメタ文字を使うことで,080-2153-4255,090-4522-5245といった0X0-XXXX-XXXXというパターンを表すことができる。148-0034といった郵便番号はマッチしない。

 

構文(ざっくり)

4つに分けて考える。

①単一文字とマッチ

②付加により繰り返し制御

③位置とマッチ

④その他