以前、別の記事でPower Automate for Desktop(以下:PAD)を使って事前定義済みのパターンでパターン検索を行う方法について紹介しました。
上の記事で紹介した「エンティティをテキストで認識する」アクションは、電話番号・URL・金額・メールアドレスなどを超簡単に抽出することができる反面、自分でカスタマイズしたパターンで文字列抽出することができません。
この記事では正規表現を使って、より柔軟なテキスト検索を行う方法について解説します。
要件
下図は、北海道の郵便番号がリストされたテキストファイルの中身(一部抜粋)です。地域ID、住所、郵便番号が記載されたテキストファイルから、Power Automate for Desktopを使って郵便番号を抽出したいと思います。
こちらの情報は日本郵便からお借りしました。
必要なアクションは?(テキストの解析アクション)
今回、郵便番号を抽出するために「テキストの解析」アクションを使用します。テキストの解析アクションのドキュメントを見ると下記のように説明があります。
テキストを解析して、指定されたサブテキストまたは正規表現パターンの最初の出現箇所またはすべての出現箇所を検索します。
テキストの解析アクション https://docs.microsoft.com/ja-jp/power-automate/desktop-flows/actions-reference/text#parse-text
かみ砕いて説明すると「テキストの解析」アクションには下記の2つのパターンの使い方があります。
テキストの解析アクションの役割
- 文章の中から、指定したキーワードを検索して、キーワードが何文字目に位置するかを数字で返す。
- 文章の中から、指定したパターンで検索して、パターンにマッチした文字列を返す。さらにマッチした文字列が何文字目に位置するかも数字で返す。(正規表現)
今回、郵便番号の抽出には上記の2つ目の使い方で「テキストの解析」アクションを実装します。パターン検索には正規表現というしくみの知識が必要です。
正規表現とは?
正規表現とは、正規表現特有の記号を組み合わせて、検索する文字列のパターンを表現できる仕組みです。
正規表現クイックリファレンス
https://docs.microsoft.com/ja-jp/dotnet/standard/base-types/regular-expression-language-quick-reference
.NETの正規表現のしくみ
https://docs.microsoft.com/ja-jp/dotnet/standard/base-types/regular-expressions
たとえば、郵便番号を正規表現で表現すると下記のようになります。
ざっくりと解説すると、[0-9]は0~9の文字列つまり数字、{3}は直前の文字が3回連続する、つまり数字が3回連続する、そのあとにハイフンがあって、次にまた数字が4回続くよ。という意味です。このような形で正規表現を知っていると規則性のある文字列を柔軟に表現できるようになります。
正規表現を簡単に理解する方法
正規表現の解説をすると長くなってしまうのでこの記事では解説は省略させていただきます。
正規表現を0から学ぶにはUdemy動画講座がオススメです。Udemyの正規表現をテーマにした動画講座は3つ受講しましたが、その中でも下記の講座が一番わかりやすかったです。
正規表現入門 作業効率アップに役立つ38個の方法購入される場合は、Udemyは頻繁にセールを開催しますので講座をお気に入りに登録しておき、セール時に購入することをオススメします。
Power Automate for Desktopのフローを作成します。
文字列抽出するテキストファイルを用意します。
ターゲットとなるテキストファイルを用意しておきます。下記の文章を張り付けてデスクトップ上に保存しました。
保存場所:
C:\Users\user\Desktop\郵便番号.txt
bc西区
にしく
コ 琴似 一条 063-0811
ID=522
〃 二条 063-0812
ID=523
〃 三条 063-0813
ID=524
〃 四条 063-0814
ID=525
小別沢 063-0011
ID=526
ニ 西 野 063-0049
ID=527
西野 一条 063-0031
ID=528
〃 二条 063-0032
ID=529
〃 三条 063-0033
ID=530
〃 四条 063-0034
Power Automate for Desktopフローを作成します。
まとめ
この記事では「テキストの解析」アクションについて解説しました。
このブログではRPA・ノーコードツール・VBA/GAS/Pythonを使った業務効率化などについて発信しています。
参考になりましたらブックマーク登録お願いします!
Power Automate学習教材
▲Kindleと紙媒体両方提供されています。デスクトップフロー、クラウドフロー両方の解説がある書籍です。解説の割合としてはデスクトップフロー7割・クラウドフロー3割程度の比率となっています。両者の概要をざっくり理解するのにオススメです。
▲Power Automate for Desktopの基本をしっかり学習するのにオススメです。この本の一番のメリットはデモWebシステム・デモ業務アプリを実際に使ってハンズオン形式で学習できる点です。本と同じシステム・アプリを使って学習できるので、本と自分の環境の違いによる「よく分からないエラー」で無駄に躓いて挫折してしまう可能性が低いです。この点でPower Automate for desktopの一冊目のテキストとしてオススメします。著者は日本屈指のRPAエンジニア集団である『ロボ研』さんです。
▲Power Automate クラウドフローの入門書です。初心者の方には図解も多く一番わかりやすいかと個人的に思っています。
Microsoft 365/ Power Automate / Power Platform / Google Apps Script…
▲Udemyで数少ないPower Automateクラウドフローを主題にした講座です。セール時は90%OFF(1200円~2000円弱)の価格になります。頻繁にセールを実施しているので絶対にセール時に購入してくださいね。満足がいかなければ返金保証制度がありますので安心してご購入いただけます。