Green hexagon containing a left parenthesis, period, asterisk and right parenthesis.

正規表現ツール

Version:
Current
Last modified: June 02, 2020

[正規表現]ツールは、正規表現構文を使用してデータの解析、一致、置換を行います。

正規表現サポート

正規表現は Designer でサポートされていますが、ユーザーは独自の式と式がデータに与える影響を担当します。

正規表現の記述方法に関するその他のリソースwww.regexlib.comについては、「www.regexlib.com、Alteryx とは無関係のサイト、または(Perl 互換の)正規表現を対話的に試すために使用できる Windows 用の無関係のグラフィカル アプリケーションである RegEx Coach」を参照してください。

ブースト RegEx の詳細については、次を参照してください。

  • -ERR:REF-NOT-FOUND-ブーストサポートされる正規表現文字クラス
  • -ERR:REF-NOT-FOUND-要素名の照合
  • -ERR:REF-NOT-FOUND-ブースト拡張書式指定文字列構文
  • POSIX 拡張正規表現構文

ツール設定

  1. [解析する列] を選択します。
  2. 変換する形式で..
    • 正規表現を入力します。式の作成中に必要になる可能性のある一般的な正規表現にアクセスするには、[+] ボタンを使用します。詳細については、Web サイトPerl 正規表現の構文 を参照してください。
    • 大文字小文字を区別しない: 既定で選択されます。検索では、大文字と小文字は区別されません。
  3. [出力] で、解析時に使用する[出力方法] を選択します。次に、関連するプロパティを構成します。
    • 置換: 検索した式を2番目の式で置き換えます。
      • 置換テキスト: 式を置換するマークされたグループを識別して、元の正規表現を置き換える式を入力します。式の作成中に必要になる可能性のある一般的な正規表現にアクセスするには、[+] ボタンを使用します。
      • 一致しないテキストを出力にコピーする
    • Tokenize: 正規表現を使用して受信データを分割します。このオプションは[テキストから列へ] ツールと同様に機能しますが、不要な項目を一致させたり削除したりするのではなく、保持する内容と一致します。トークン全体に一致させたい場合、マークされたグループがある場合は、その部分だけが返されます。以下の「メソッドの例をトークン化する」を参照してください。
      • 列に分割する : 指定された区切り文字の各インスタンスにある、1列のデータを複数の列にスプリットします。。
        • 列数: 作成する列数を設定します。
        • [余分な列]: 余分な列に適用される動作を選択します。
          • 超過分のドロップと警告 : 分割を超えたデータがドロップし、情報の超過があったことを示す警告が表示されます。
          • 警告を表示せずに超過分をドロップ: 分割を超えたデータがドロップし、情報の超過があったことを示す警告は表示されません。
          • エラー: 分割分を超えてデータが拡張するとエラーが発生し、ワークフローの処理が停止します。
        • 出力ルート名: 新しく生成された列の名前を入力します。新しい列には、連続的に増加する整数を付加したルート名として名前が付けられます。
      •  行に分割:指定された区切り文字の各インスタンスにある、1列のデータを複数の行にスプリットします。どの行にどの値が存在しているか追跡不可能にならないように、レコードでキー列を使用します。
    • 解析: 式を新しい列に分割し、新しい列の[名前]、[種類]、[サイズ] を設定します。出力列テーブルに、次のを含む新しい列が作成されます。
      • 名前: 列名を選択して新しい名前を入力します。
      • Type: ドロップダウンを使用して、新しいデータ型を選択します。
      • サイズ: データ サイズを選択して新しいサイズを入力します。
      • : 自動的に設定されます。
    • 一致: 数値を含む列を追加します: 1 式が一致した場合は 0 を指定します。
      • 一致ステータスの列名: 追加された列の名前を指定します。
      • [一致しない場合はエラー] : ワークフロー処理を終了するために式と文字列が一致しない場合にエラーが生成されます。

メソッドの例をトークン化する

これらのユースケースは、Regex ツールのトークン化メソッドに依存しています。

  • 9文字の文字列123456789 を3 つのフィールドにパースします。正規表現は...
  • 9文字の文字列を3つのフィールドにパースし、2番目の文字だけを返します。正規表現は.() です。.
  • 区切り文字Ctrl-Aを使用してフィールドを解析します。Ctrl-A で区切られた文字列をトークン化するための正規表現は[^\cA] +です。
    • [^...]括弧は、文字セット内の1文字に一致するものを指定します。^ でセットを開始すると、セットにない任意の文字に一致するように変更されます。
    • \cAこれは単に Ctrl-A 文字と一致します。
    • +これは、前の 1 つ以上と一致します。
  • エントリを保持するために空白のトークンを許可します: abc, ,def正規表現は([^,]*) (?:,|$) です
    • (...)かっこ式のマークされたグループを作成します。トークン化モードでは、入力フィールドの大部分を一致させても、マークされたサブセットのみを返すことができます。こうすることで、区切り文字を返さないようにすることができます。マークされた式が1しかないかもしれません。
    • [^,]^を指定してセットを開始すると、セット内の文字に一致するように変更されます( この場合は 、、)。
    • * は、空のセットを可能にする前の0以上に一致します。無限の数の一致があるので、正規表現エンジンが0文字の一致に適合しないからといってここで終わらせることはできません。そのため、何かの文字で一致を終了させる必要があります。
    • (?:....)これはマークされていないグループです。私たちは、のために、または私たちが使用するのためにこれを必要とします。
    • | これは、前または後のどちらかに一致すると言っていますが、両方ではありません。これは、常にマークの付いたグループ、はマークの付かないグループで使用する必要があります。
    • $ は文字列の末尾に一致します。したがって、(?:,|$)は 、文字列の末尾または末尾まで一致します。
  • ホーム ページからの HTML リンクを解析します。正規表現は . *?. これにより、大規模な HTML ドキュメントからすべてのリンクが一連のレコードに引き出されます。
    • これはテキストに対するリテラルの一致です。
    • .*?. は任意の文字で、*は 0 以上です。[*] は、最短の一致に一致するように *を変更します。これがないと、式は最初のリンクの先頭から最後の末尾までの1つのトークンを見つけることができます。
    • >これは、テキスト > に対するリテラルの一致です
    • .*?正規表現全体を満たす文字の最短一致。
    • これは、テキストに対するリテラルの一致 です。これで一致は終わります。
Was This Helpful?

Running into problems or issues with your Alteryx product? Visit the Alteryx Community or contact support.