ごく稀に正規表現を書くことがあり、その度に正規表現の書き方を調べています。 時間のないときはお手上げです...。
そんな時にこちらのツールを教えていただきました!
次回以降、こちらのツールの使い方を思い出せるようにメモします。
正規表現チェッカーの画面の使い方
正規表現もよく分かっていないと、この画面だけを見ても使い方が分かりませんでした。
使い方
① 渾身の正規表現を「正規表現」の欄に入力する
② ①にマッチするであろう文字列を「検証対象文字列」の欄に入力する(改行して何パターンも文字列を検証できる)
③ マッチすると「結果」欄に②の文字列が赤く表示される
例)
こんな感じで使いました。 「正規表現」の欄に右の正規表現の表を見ながら試行錯誤して入力して、ひたすらチェックするといった使い方になりそうです。
またこのサイトでは「HTMLエスケープ」という、HTMLエスケープされた文字列を返してくれるツールもあります。便利です。
正規表現とは
そもそもですが調べてみました。
端的に言えば、「いくつかの文字列を一つの形式で表現するための表現方法」です。
なるほど。
^
や $
などの特殊文字を正規表現ではメタ文字というそうです。
正規化とは
こちらもよく聞く単語だったので調べました。
https://wa3.i-3-i.info/word11632.html
データとかを使いやすいように整理したり変形したりすることです。
正規表現と関係があるかと思いましたがそうでもないようです。
(同じ「正規」と付くだけあってそこまで遠くはなさそうですが...)
.htaccessでリダイレクトの方法
ちなみに今回は.htaccessでリダイレクトの設定をしました。
これもメモ程度にざっくり書くと、
RewriteRule サイト内の対象ページ リダイレクト先 [R=301,L]
です。正規表現を使って書くことができます。
頭に RewriteRule
が付き、最後は [R=301,L]
などで終ります。
また、「対象ページ」に書いた (.+)
など ()
で囲った部分は、「リダイレクト先」に$1
、$2
、$3
と書いて渡すことができます。
例)
RewriteRule ^blog/(.+)cat/(.*)$ https://%{HTTP_HOST}/blog/cat/$2 [R=301,L]
これで
https://example.com/blog/postcat/hoge
が
↓
https://example.com/blog/tcat/hoge
へ
リダイレクトします。
$2
には (.*)
が渡ります。
.htaccessの書き方は勉強しよう!
と、自分に言い聞かせています。
.htaccessではいろいろなことができますが、1歩間違えればサイトにアクセスすらできない、恐れ多い印象を持っています。
難しく感じてしまうのは正規表現をつかった処理が出てくるから、というのもあると思います。
少しずつ理解していきたいです。
正規表現がある程度スラスラ書けるようになると、いろいろな場面で役立ちそうなので、 こういったツールを使って正規表現に慣れていきたいです。