Docly Child

正規表現を使って文字を抽出

1935 views

この記事では「正規表現」を使ったワークフロー設定について紹介します。

正規表現を利用する場面

正規表現は次のような場面での利用が想定されます。

・テキストの中から特定の文字列パターンだけを抽出
・テキストから特定の文字列パターンを削除

主にテキストの検索と削除に利用するイメージです。

※正規表現の詳細については、こちらを参照ください。

 「MatchText」正規表現で検索

正規表現で検索を行うときは、「MatchText」アクションを利用します。

次のようなテキストの中身から、請求金額の「200,000」を正規表現で抽出するケースを想定して、実際のワークフローを設定してみます。

「請求書送付のご案内」

〇〇株式会社 △△様

いつもお世話になっております。オートロ株式会社の田中です。

ご購入いただいた商品の請求書を添付ファイルにて送付させていただきます。
なお、請求書に記載しております振込先へお振込くださいますようお願いします。
ファイルが開封できないなどの不都合がございましたら、お手数ですがご連絡ください。

添付ファイル:請求書(No.0000-1).pdf
請求金額:200,000円
お振込期日:〇〇〇〇年○月○日

ご不明な点やご要望などがありましたら、お気軽にお問い合わせください。 何卒よろしくお願いします。

————————–
オートロ株式会社
営業部 田中
————————–

 ワークフローの設定例

下記手順にてワークフローを設定します。

まず、先ほどのテキストを「Text」アクションに設定します。

  • 「Text」アクションをドロップ&ドラッグします。
  • テキストパラメーターに上記テキストを設定します。
 

今回は請求金額の部分「200,000」を抽出します。

  • 「MatchText」アクションをドロップ&ドラッグします。
  • テキストパラメータに、1で作成した「Text」アクションのアウトプットを設定します。
  • 正規表現には「(?<=請求金額:).*(?=円)」と設定します。

※正規表現の詳細については、下記のサイトを参照ください。

https://developer.mozilla.org/ja/docs/Web/JavaScript/Guide/Regular_Expressions

MatchTextのアウトプットはリストで出力されます。
# テキストを作成
+text1:
  action>: Text
  text: "「請求書送付のご案内」\n\n〇〇株式会社 △△様\n\nいつもお世話になっております。株式会社チュートリアルの田中です。\nご購入いただいた商品の請求書を添付ファイルにて送付させていただきます。\n\nなお、請求書に記載しております振込先へお振込くださいますようお願い申し上げます。\nファイルが開封できないなどの不都合がございましたら、お手数ですがご連絡ください。\n\n添付ファイル:請求書(No.0000-1).pdf\n請求金額:200,000円\nお振込期日:〇〇〇〇年○月○日\n\nご不明な点やご要望などがありましたら、お気軽にお問い合わせください。\n何卒よろしくお願いします。\n\n--------------------------\n株式会社チュートリアル\n営業部 田中\n--------------------------\n"

# 正規表現で検索
+match_text_1:
  action>: MatchText
  text: +text1
  regex: '(?<=請求金額:).*(?=円)'
  global: false
[参考記事]

このページは役に立ちましたか?