はじめに
「正規表現は人類には早すぎるとは思いませんか?」
あまりにも厳しい条件分岐・文法だらけ。初見で尻込みしてしまうようなものばかりです。かくいう自分も、やつにはこれでもかと苦しめられ、様々なバグを踏み抜いてきました。
しかし、使いこなせたときに見えてくる景色は、今とは全く違うもののはずです。
そんな恐ろしくも便利な正規表現に打ち勝つためのおすすめツールやゲームを紹介します!
Debuggex
はじめに紹介するのは、可視化ツールです。
例えば「メールアドレスの正規表現」を書きたいとしましょう。ぱっと考えてみたとき、一例が以下になりますね。
[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}
ただ正直ぱっと見、なんだかよくわからないですよね。
初見だと怖いとまで感じます。これでどんなパターンが割り出せて、どんな潜在バグが入ってしまっているのか…
そんな時にこのツールを使えば、以下のように正規表現を可視化してくれます。
どの要素が何回繰り返す想定なのか、どんな文字を許容してくれるのか、ばっちり可視化してくれます。
ここで言えば、「@は絶対に通るな…」とか「ドメインの末尾は2文字以上じゃないといけないのだな」とかがわかると思います!
ぜひ使ってみて、その便利さを体感してみて下さい。
正規表現パズル
続いて紹介するのは、正規表現をゲーム感覚で楽しめるアプリです。
https://gametsukurukun.com/regexp-puzzle
苦手ならいっそ楽しもうという逆転の発想ですね!正規表現も一つのパズルゲームと考えれば、克服への道は近いのでしょうか…?
ゲームの内容としては、非常に簡単なものから「そんな文法あったのか!」というニッチなものまで幅広くカバーしており、段階を踏みながら学ぶことができます。
実際自分も挑戦し、かなり正規表現に対して苦手意識はなくなりました!(もちろんバグは今も踏み抜くことはありますが…)
電車の中や暇な時間に数問だけ挑戦するというお手軽さなのでぜひ挑戦してみてください!
終わりに
今回は人類が正規表現と仲良くなるためのツールやゲームを紹介しました。ぜひ一緒に正規表現に挑み、その頂を目指しましょう!
正規表現を好きになれる日がいつか来ると信じて…