Power Automateで文字列を抽出する方法|特定の文字・位置など自由自在

スポンサードリンク
PowerAutomate
  • Power Automateで文字列から文字を抽出したい
  • 特定の文字を基準に抽出したい(ABC-123 → ABC, 123)
  • 特定の位置から数文字を抽出したい(ABCDEFG → CDE)

上記のようなことをお考えでしたら、このまま読んでいってください。
この記事では、下記の内容をまとめて解説いたします。

  • Power Automateで文字列を抽出する方法
    • 特定の文字を基準にした抽出
    • 特定の位置を基準にした抽出

※わかりやすさを重視しております。厳密には解釈が異なる場合がありますことをご了承ください

スポンサードリンク

Power Automateで文字列を抽出する方法

文字列の抽出は目的に応じて2つの方法があります。

  • 特定の文字を基準に抽出(ABC-123 → ABC, 123)
  • 位置を基準に抽出(ABCDEFG → CDE)

それぞれ画像付きで解説いたします。

Power Automateの起動や基本的な使い方は下記記事をご参考ください。

特定の文字を基準にして抽出

今回は文字列「ABC-123」から「ABC」を抽出してみましょう。
使用するアクションは「テキストを切り抜く」です。

左側のアクションエリアから「テキスト」を探し出し、「>」をクリックします。

【PowerAutomate】特定の文字を基準にして文字列を抽出1

すると「テキスト」に関するアクション一覧が表示されますので、「テキストを切り抜く」を中央エリアにドラッグ&ドロップします。

【PowerAutomate】特定の文字を基準にして文字列を抽出2

「テキストを切り抜く」画面が表示されたら、下記の指定をします。

  • 元のテキスト:文字列を入力するか、右側の{x}から変数や配列を指定
  • モード:抽出したい部分に応じて変更
    • 指定されたフラグの前にあるテキストを取得する:「ABC-123」→「ABC
    • 指定されたフラグの後にあるテキストを取得する:「ABC-123」→「123
  • 終了フラグ:特定の文字を指定(今回は「-」)
  • (大文字小文字を区別しない:必要に応じてONにする)
【PowerAutomate】特定の文字を基準にして文字列を抽出3
【PowerAutomate】特定の文字を基準にして文字列を抽出4

今回は「-」より前の「ABC」を抽出したいので、「指定されたフラグの前にあるテキストを取得する」を指定しました。

では、メッセージボックスを追加して結果を表示してみましょう。
※メッセージボックスの表示方法はこちらの記事を参照

【PowerAutomate】特定の文字を基準にして文字列を抽出5

無事、抽出された「ABC」が表示されました。成功です。

特定の文字が2箇所ある場合

「ABC-123-456」など、特定の文字が2箇所以上ある場合はどうなるのでしょうか?
「フラグの前」「フラグの後」両方試してみます。

【PowerAutomate】特定の文字を基準にして文字列を抽出6

最初の「-」が基準となるようです。

「-」に挟まれた「123」を抽出したい場合は、別のモードがあります。

  • モード:指定された2つのフラグの間にあるテキストを取得する
【PowerAutomate】特定の文字を基準にして文字列を抽出7

各フラグは別の文字でも可能です。
「ABC-123/456」なら、開始フラグに「-」を、終了フラグに「/」を指定してください。

実行すると、無事「123」が取得できました。

【PowerAutomate】特定の文字を基準にして文字列を抽出8

位置を基準にして抽出

文字列「ABCDEFG」3文字目~5文字目までの「CDE」を抽出してみましょう。
使用するアクションは「サブテキストの抽出」です。

【PowerAutomate】文字数を基準にして文字列を抽出1

前項同様にアクションを追加したら、設定画面が開きますので、下記の指定をします。

  • 元のテキスト:文字列を入力するか、右側の{x}から変数や配列を指定
  • 開始インデックス:今回は「文字の位置」を指定
    • テキストの先頭:先頭から○文字分抽出したい場合はこちらを指定
    • 文字の位置:文字列の○文字目から抽出したい場合はこちらを指定
  • 文字の位置:抽出する文字の開始位置を指定
    ※0から始まることに注意(2文字目なら1、3文字目なら2)
  • 長さ:今回は「文字数」を指定
    • テキストの末尾:開始位置から最後まで抽出したい場合はこちらを指定
    • 文字数:開始位置から○文字分抽出したい場合はこちらを指定
  • 文字数:開始位置から抽出する文字数を指定
【PowerAutomate】文字数を基準にして文字列を抽出2

開始位置が「マイナス」指定の場合はエラーになります。
開始位置が元の文字数より多い場合はエラーになります。
元の文字列の末尾より多い文字数を指定した場合はエラーになります。

【PowerAutomate】文字数を基準にして文字列を抽出3
スポンサードリンク

最後に

Power Automateで文字列を抽出する方法を解説いたしました。

当ブログでは、VBAマクロやPythonなど、時間を生み出すプログラミング術を公開しております。
この記事がわかりやすいと感じた方は、他の記事も読んでいってください。

最後までお読みいただき、ありがとうございました。がんばってください!

タイトルとURLをコピーしました