Communications Mining
最新
バナーの背景画像
Communications Mining ガイド
最終更新日 2024年2月29日

カスタム正規表現エンティティの構築

必要な権限: [データセットの更新]

カスタム正規表現エンティティとは

カスタム正規表現エンティティを使用すると、ID やリファレンス番号など、既知の繰り返し構造を持つテキストの範囲を抽出して整形することができます。

これは、バリエーションがほとんどないシンプルで構造化されたエンティティには便利なオプションですが、大きなバリエーションがあり、コンテキストが予測に大きな影響を与えるエンティティには、マシン ラーニング ベースのエンティティが適切な選択肢です。この 2 つを組み合わせて Communications Mining 内の任意のデータセットで使用できます。

より広範な正規表現 (すなわち、エンティティを定義する一連のルール) は、カスタム エンティティのベースとしても使用できます。このルールを、Communications Mining 内でのトレーニングによる、コンテキストに応じたマシン ラーニング ベースの改良と組み合わせて、高度なカスタム エンティティを作成します。これにより、最適なパフォーマンスと、自動化のために抽出する値に必要な制限が提供されます。

カスタムの正規表現テンプレート

カスタム正規表現エンティティは、1 つ以上のカスタム正規表現テンプレートで構成されます。各テンプレートは、エンティティを抽出 (および書式設定) する 1 つの方法を表します。

これらのテンプレートを組み合わせることで、同じエンティティの種類の複数の表現をカバーする柔軟で強力な方法が提供されます。

テンプレートは、次の 2 つの部分で構成されます。

  1. 正規表現。エンティティとして抽出するテキストの範囲が満たす必要がある制約を記述します。
  2. 書式設定。抽出した文字列をより標準的な書式に正規化する方法を表します。

たとえば、顧客 ID が、「ID」という単語とその後に続く 7 桁の数字、または 9 文字の英数字の文字列である場合、2 つのテンプレートは次のようになります。



先行入力の検証

[正規表現] または [書式設定] のいずれかのテキスト ボックスに入力すると、入力の有効性について即座にフィードバックが提供されます。たとえば、無効な正規表現「ID\d{}」を入力すると、次のように表示されます。

抽出結果のプレビュー

カスタム正規表現テンプレートをテキストでテストして、期待どおりに動作することを確認できます。テンプレートで抽出されるエンティティが、その値、および開始文字と終了文字の位置とともにリストに表示されます。

たとえば、[正規表現] が「\d{4}」で [書式設定] が「ID-{$}」の場合、次のテスト文字列では 1 つの抽出結果が表示されます。


正規表現

正規表現は、テキスト内のエンティティを抽出するために使用されるパターンです。構文のドキュメントについては、こちらをご覧ください。

名前付きキャプチャ グループを使用すると、抽出された文字列の特定のセクションを識別し、続いて書式設定を行うことができます。キャプチャ グループの名前は、すべてのテンプレートで一意である必要があり、小文字の文字または数字のみを使用する必要があります。

通貨の書式

書式設定を指定して、抽出されたエンティティを後処理できます。

既定では、書式設定は適用されません。プラットフォームによって返される文字列は、正規表現によって抽出された文字列になります。ただし、必要に応じて、次のルールを使用して、より複雑な変換を定義できます。

変数

正規表現で定義した名前付きキャプチャ グループは、プレフィックス $ を付けることで、書式設定ロジックで変数として使用できます。$ 記号自体は、正規表現の完全一致を表すことに注意してください。
その後、変数を書式設定文字列で使用すると、対応する抽出範囲をプラットフォームによって返される値に挿入できます。変数名は中括弧 {} で囲む必要があります。
たとえば、7 桁の数字を ID として抽出し、この 7 桁の数字にプレフィックス ID- を付けて返す場合、正規表現と書式設定は次のようになります。


または、名前付きキャプチャ グループを使用します。


その後、「My identification number is 1234567」というテキストがプラットフォームに提供された場合、1つのエンティティ「ID-1234567」が返されます。

文字列操作

生の文字列を使用することができ、複数の文字列を & 記号を使用して連結できます。
正規表現(?P<id1>\b\d{3}\b)|(?P<id2>\b\d{4}\b)
通貨の書式{$id1 & "-" & $id2}
テキスト最初の ID は 123 で、2 番目の ID は 4567 です
プラットフォームによって返されるエンティティ123-4567

関数

一部の関数を書式設定で使用して、抽出された文字列を変換することもできます。関数の名前とそのシグネチャは、Excel に準じています。

Upper

抽出された範囲内のすべての文字を大文字に変換します。

正規表現\w{3}
通貨の書式{upper($)}
テキストabc
プラットフォームによって返されるエンティティABC

Lower

抽出された範囲内のすべての文字を小文字に変換します。

正規表現\w{3}
通貨の書式{lower($)}
テキストAbC
プラットフォームによって返されるエンティティabc

Proper

抽出された範囲を大文字にします。

正規表現\w+\s\w+
通貨の書式{proper($)}
テキストalbert EINSTEIN
プラットフォームによって返されるエンティティAlbert Einstein

Pad

抽出された範囲を、指定したサイズまで、指定した文字でパディングします。

関数の引数:

  1. パディングする文字を含むテキスト
  2. パディングする文字列のサイズ
  3. パディングに使用する文字
正規表現\d{2,5}
通貨の書式{pad($, 5, "0")}
テキスト123
プラットフォームによって返されるエンティティ00123

Substitute

文字を他の文字に置き換えます。

関数の引数:

  1. 置換する文字を含むテキスト
  2. 置き換える文字
  3. 置き換え前の文字を置き換えるのに使用する文字
正規表現ab
通貨の書式{substitute($, "a", "12")}
テキストab
プラットフォームによって返されるエンティティ12b

範囲の最初の n 文字を返します。

関数の引数:

  1. 抽出する文字を含むテキスト
  2. 返す文字の数
正規表現\w{4}
通貨の書式{left($, 2)}
テキストABCD
プラットフォームによって返されるエンティティAB

範囲の最初の n 文字を返します。

関数の引数:

  1. 抽出する文字を含むテキスト
  2. 返す文字の数
正規表現\w{4}
通貨の書式{right($, 2)}
テキストABCD
プラットフォームによって返されるエンティティCD

Mid

範囲から、指定した位置より後の n 文字を返します。

関数の引数:

  1. 抽出する文字を含むテキスト
  2. 返す最初の文字の位置
  3. 返す文字の数
正規表現\w{5}
通貨の書式{mid($, 2, 3)}
テキストABCDE
プラットフォームによって返されるエンティティBCD

Was this page helpful?

サポートを受ける
RPA について学ぶ - オートメーション コース
UiPath コミュニティ フォーラム
UiPath ロゴ (白)
信頼とセキュリティ
© 2005-2024 UiPath. All rights reserved.