正規表現を習得することで文字列やファイルの検索を自由自在に行うことができます。
この記事では正規表現の学習に実際に使ってみて良かった教材を紹介します。
この記事の対象者
- 正規表現ってそもそも何?という方。
- ノンプログラマーだけど、RPAや自動化のスキルをもう少しレベルアップさせたい方。
- Power Automate for desktopで自由自在にファイルや文字列を検索したい方。
正規表現とは?
当サイトはノンプログラマーの方も多くご覧いただいていますので、一応正規表現とは何かを簡単に解説します。
正規表現(Regular expressions)とは、多くのプログラム言語の中で広く採用されている文字列のパターンの表現方法です。正規表現を用いることで文章の中から目的のキーワードを柔軟に抽出することができます。
たとえば、お客様から受信する注文メールを、Excelの管理シートに転記する作業をPower Automate for desktopなどのRPAソフトで自動化したいと考えているとします。
発注書の中には下記のような管理情報があり、それをメールから抽出したいです。
注文番号:Q0001
氏名:山田 太郎
金額:16,800円
電話番号:080-1111-1111
作業者が人間でしたら、「注文番号:」の右側に5桁の注文番号がある、氏名の右側に氏名がある、金額は数字である、という風に理解することができます。「口頭で電話番号だけメールから抜き取っておいてー」なんてお願いすれば大抵の人は理解してやってくれるでしょう。
しかし、この作業をコンピュータに指示して作業をやってもらうとなると以外に大変なんです。氏名や金額は文字数や桁数も変わってきますし・・・。
そんなときにコンピュータに指示する時によく使われる、人間とコンピュータの共通言語が正規表現です。例えば電話番号(ハイフン付き)は正規表現で下記のように表すことができます。
^0\d{2,3}-\d{1,4}-\d{4}$
↑この正規表現は、電話番号の下記の特徴を正規表現特有の表記法で表したものです。
このように正規表現を使えばコンピュータに一撃で複雑な文字列パターンの指示を送ることができます。
正規表現でできることの例
正規表現では他にも下記のようなパターンを表現して、文字列を抽出することができます。
- 請求書から金額を抽出する。
- HTMLファイルからHTMLタグを取り除く。
- 郵便番号を抽出する。
- 電話番号を抽出する。
- 漢字だけの文字列を抽出する。
- 数字だけの文字列を抽出する。
- 特定の文字列の後ろの桁数の不明な数字を抽出する。
- 上記の条件を組み合わせた複雑な条件でファイルを検索する。
ノンプログラマーが正規表現を学ぶべき理由
正規表現が使える場所は?
正規表現は多くのプログラム言語の中で使えます。ではプログラマーだけが覚えればいいのかというとそうでもなくRPAソフトウェアやテキストエディタなどのGUIアプリケーションの中にも使えるシーンが多くあります。
Power Automate for desktop でも使える!
正規表現は、Power Automate for desktop、Excel VBA、Google Apps Script、Google Analyticsなどのノンプログラマーでも利用者の多いツールでも利用可能です。
ノンプログラマーなビジネスマンでも正規表現を身につければ強力な武器になります。
正規表現の学習方法。
正規表現の学び方
- 基礎を掴む。
- テキストや動画講座で基礎を掴みます。
- 実際に書いてみる。
- 手を動かして正規表現で文字列抽出の練習をしてみる。
正規表現の表現方法はクセが強くて複雑なので一発で理解するのは難しいです。テストサイトで手を動かしていくのが良いかなと思います。
正規表現の学習におすすめのUdemy講座
わたし自身が正規表現をUdemyで学んだので、基礎知識の習得にはUdemy講座をおすすめします。
Udemy講座はセール時には書籍と同程度の価格で購入できますので、上記のメリットを考えるとわたしはudemy講座をおすすめします。
セール時に購入しましょう。
Udemyはかなり頻繁(月に1~2回程度?)にセールを行っており、セール時は80~90%OFFの価格になります。Udemyはセール中に買う。というのは常識です。セールのタイミングを狙いましょう。
セール開催中かを確認する!
Udemyのおすすめの正規表現の講座をピックアップ!
わたしはUdemyで正規表現講座を3つ購入してみましたが、おすすめは下記です。
正規表現を0から学ぶにはUdemy動画講座がオススメです。Udemyの正規表現をテーマにした動画講座は3つ受講しましたが、その中でも下記の講座が一番わかりやすかったです。
正規表現入門 作業効率アップに役立つ38個の方法購入される場合は、Udemyは頻繁にセールを開催しますので講座をお気に入りに登録しておき、セール時に購入することをオススメします。
コチラの講座でなんとなく理解しているつもりだった正規表現がスッと頭に入りました。
正規表現を書いてみよう!
正規表現はとにかく手を動かしてなんぼだと思います。下記のような動作環境を用意しましょう。
正規表現のおすすめのテスト環境
- 正規表現テストサイト
- プログラミング用テキストエディタ
正規表現テストサイト
正規表現を手っ取り早く練習・テストするのにテストサイトを使用するのがおすすめです。ブラウザ上で動作するので事前準備なしでサクッとテストできます。なかでもregex101.comは、世界でも有名な正規表現テストサイトでおすすめです。
プログラミング用テキストエディタ
プログラミングに用いられるテキストエディタほとんどが正規表現での検索機能を備えています。例として無料で動作が軽快なVS Codeなどがあります。
まとめ
正規表現のメリットと学習方法についてご紹介しました。
このブログではRPA・ノーコードツール・VBA/GAS/Pythonを使った業務効率化などについて発信しています。
参考になりましたらブックマーク登録お願いします!
セール開催中かを確認する!