【ruby】Rubularで正規表現練習 第一回
今まで逃げてた正規表現(regular expresson、略してRegex! れげっくす???)に向き合うべく、基本の正規表現をおさらい!
(正規表現はjavascriptやRubyなど、言語によって多少かわるようなのですが、今回はRubyに限定して行います。)
かっこつけたいので、下記では正規表現をRegexと書かせてください ^^
いままでお世話になっているRubularというサイトで練習していきます!
RebularのフッタのあたりにかいてあるRegex Quick reference!この魔法の呪文の一番左の列を今回は覚えていこうと思います!!
[abc] :A single character of: a, b, or c (1文字:aかbかc)
[^abc] :Any single character except: a, b, or c (1文字:aかbかc以外)
[a-z] :Any single character in the range a-z (1文字:a からz。つまりアルファベット小文字)
[a-zA-Z] :Any single character in the range a-z or A-Z (1文字:a からzとAからZ。つまりアルファベット小文字と大文字)
^ :Start of line (行の最初)
$: End of line(行の最後)
\A :Start of string (文字列の最初)
\z :End of string (文字列の最後)
上の説明見ても、なにがなんだか、、、、??
とりあえず例を見ていきましょう!
1、[abc] (apple banana cherryでテスト)
aかbかcの値がマッチして、青くなっていることが分かると思います。
[01234567]とすれば、0~7の数字がマッチ!
[abc][123]とすれば、一文字目がa,b,cのどれかで、二文字目が1,2,3のものがマッチ!
たとえばa1やc2など。
2、[^abc] (apple banana cherryでテスト)
逆にabc以外の文字がマッチ
3、[a-z] (Apple Banana 01234でテスト)
小文字だけマッチ。名前の入力フォームで小文字だけ許可にしたいときなどに使えそうです!
4、[a-zA-Z] (Apple Banana 01234でテスト)
アルファベットだけマッチ!
[0-9]とすれば、数字だけがマッチ!
5.^ 、$
行の最初と最後が指定できます!
6、\A 、\z
文字列の最初と最後が指定できます!^ 、$との違いは、複数行のときはNo matchesになること!一行だけOK
これだけでも応用次第で色々とできそうですね!
今日はここまでー!
おやすみなさいぃぃぃぃ