【大阪 / 横浜】インフラ / サーバーサイドエンジニア募集中!

【大阪 / 横浜】インフラ / サーバーサイドエンジニア募集中!

【25卒向け】AI×バーチャル面接の募集を開始いたしました!

【25卒向け】AI×バーチャル面接の募集を開始いたしました!

【導入実績 500社以上】AWS 構築・運用保守・監視サービス

【導入実績 500社以上】AWS 構築・運用保守・監視サービス

【CentOS 後継】AlmaLinux OS サーバー構築・移行サービス

【CentOS 後継】AlmaLinux OS サーバー構築・移行サービス

【WordPress 専用】クラウドサーバー『ウェブスピード』

【WordPress 専用】クラウドサーバー『ウェブスピード』

【格安】Webサイト セキュリティ自動診断「クイックスキャナー」

【格安】Webサイト セキュリティ自動診断「クイックスキャナー」

【低コスト】Wasabi オブジェクトストレージ 構築・運用サービス

【低コスト】Wasabi オブジェクトストレージ 構築・運用サービス

【予約システム開発】EDISONE カスタマイズ開発サービス

【予約システム開発】EDISONE カスタマイズ開発サービス

【100URLの登録が0円】Webサイト監視サービス『Appmill』

【100URLの登録が0円】Webサイト監視サービス『Appmill』

【中国現地企業に対応】中国クラウド / サーバー構築・運用保守

【中国現地企業に対応】中国クラウド / サーバー構築・運用保守

【YouTube】ビヨンド公式チャンネル「びよまるチャンネル」

【YouTube】ビヨンド公式チャンネル「びよまるチャンネル」

正規表現が試せる、使える! RegExrのご紹介

こんにちは。
開発チームのワイルド担当、まんだいです。

開発をやっていると、正規表現を使うことはよくあることで、何となく適当な正規表現を書くと、ビビるようなバグを産んでしまう可能性があります。
なので、正規表現のテストや動作確認をしたいけれど、テストコード書くのは……という時に、便利なサイトを紹介します。

 

正規表現の確認に、RegExrを使ってみよう

RegExrというサイトがあります。

このサイトでは、正規表現の確認をするために便利な機能がまとまっていて、使い心地もよいと思います。

もともとJavaScriptの正規表現だけを確認できるサイトだったのですが、最近見ない間に、PHPの正規表現(PCRE)にも対応していました。

使い方は簡単で、見たら分かる部分もありますが、サイト全体英語なので、一つずつ見ていきたいと思います。

 

メニューには、サイトのヘルプや正規表現のチートシートがあります。

特にチートシートやリファレンスはよく見ることになるので、覚えておいたほうがいいですね。

見やすく作られているので、重宝します。

 

Expression

ここからよく使う項目で、Expressionの部分には、実際の正規表現を書いていきます。

基本はJavaScriptなので、「/」から「/」で囲まれた部分に正規表現を書くことになります。

「()」や「[]」などで囲まれた部分が色分けされるので、見た目にも非常に分かりやすいです。
こういう機能、VSCodeにも追加してほしいな……。

タイトルの右側に、正規表現の実行エンジンをJavaScriptかPCREのどちらかを選ぶことができます。
また、Flagsの項目では、5つのオプションを選ぶことができます。

  • g (global)
  • i (case insensitive)
  • m (multiline)
  • u (unicode)
  • y (sticky)
PHPにはないオプションです

それぞれJavaScriptで設定できるオプションなので、たとえばPHPの場合、globalフラグはないので、preg_match_allという専用の関数を選択することになります。

 

Text

この項目には、サンプルとなるテキストを入力します。
デフォルトで色々書かれていますが、こちらは消してもOKで、自分で入力することもできます。

背景が青くなっているのがマッチした箇所

怪しい文字列やテストしたい文字列を入力しましょう。

 

Tools

こちらの項目は正規表現の結果を料理するためのツールがセットされていて、以下の4つが現在利用可能です。

 

Replace

正規表現でマッチした文字列を置換するためのツールです。
このツールを使えば、簡単な文字列変形もできてしまうので、単なる正規表現のチェックツール以外の使い方もできます。

日本語でもいい感じに動いています

 

List

Listは正規表現でマッチした文字列をリスト表示します。

「$&」で表示された部分に、マッチした文字列が入るので、抽出した文字列の前後に付け加えたい文字列を入力することで、一気に追加できます。

デフォルトでは、「\n」が付与されているので、マッチした文字列毎に改行されていますが、文字列の最初に「- 」を追加すれば、マッチした文字列をマークダウンのリストにすることも簡単にできます。
これはこれで便利ですね。

 

Details

Detailsというツールは、選択した文字列が、正規表現中のどの部分にマッチしたかを詳しく知ることができます。
思っていた部分ではない部分でマッチした結果、思った結果が得られているだけということもあり得るので、こちらで確認して過程も正しく動作しているか確認してみましょう。

TEXTの項目のマッチした部分をクリックするとそこの情報が表示されます

 

Explain

これは、MySQLのEXPLAINのような機能です。括弧でグルーピングされる文字列や、どの部分までが括弧がマッチする箇所になるかが分かります。
これも非常に便利です。

 

まとめ

正規表現のチェックツール、RegExrの機能を紹介しましたが、いかがだったでしょうか?
最近のバージョンアップで、PHPへの対応や、ツールの追加で色々と正規表現の確認以上のことができるようになり、ますます便利になった気がします。

個人的にはReplaceやListツールは、エクセルでガーッとやることが多かった作業なので、もう少し賢く作業してみようと思いました。

 
以上です。

この記事がお役に立てば【 いいね 】のご協力をお願いいたします!
1
読み込み中...
1 票, 平均: 1.00 / 11
1,390
X facebook はてなブックマーク pocket
【2024.6.30 CentOS サポート終了】CentOS サーバー移行ソリューション

【2024.6.30 CentOS サポート終了】CentOS サーバー移行ソリューション

【25卒向け】AI×バーチャル面接の募集を開始いたしました!

【25卒向け】AI×バーチャル面接の募集を開始いたしました!

【大阪 / 横浜】インフラエンジニア・サーバーサイドエンジニア 積極採用中!

【大阪 / 横浜】インフラエンジニア・サーバーサイドエンジニア 積極採用中!

この記事をかいた人

About the author

萬代陽一

ソーシャルゲームのウェブ API などの開発がメイン業務ですが、ありがたいことにマーケティングなどいろんな仕事をさせてもらえています。
なおビヨンド内での私の肖像権は CC0 扱いになっています。