REGEX
説明
REGEX
は、 に対する文字列全体の照合を実行する行関数です TEXT
は、正規表現で返され、正規表現の最初に取得されたグループに一致する文字列の部分を返します。構文
REGEX
(string_expression
,"regex_matching_pattern
")戻り値
一致を返します
TEXT
正規表現の最初に取得されたグループの値。一致するものがなかった場合は、 が返されます NULL
。入力パラメータ
- string_expression
- 必須のコンテンツ。型のフィールドまたは式の名前TEXT(またはリテラル文字列)。
- regex_matching_pattern
- 必須のコンテンツ。Java プログラミング言語の正規表現パターン一致構文に基づく正規表現パターン。NULL 以外の値を返すには、正規表現パターンは全体と一致する必要がありますTEXT値。
正規表現構成
正規表現のマッチング パターンの定義に使用される構成については、正規表現参照を参照してください。
取得グループおよび非取得グループ
グループは、正規表現のサブパターンを囲むペアで指定されます。1 つのパターンに複数のグループを設定でき、グループを入れ子にすることができます。最初の左かっこから、左から右に番号が付けられ、グループには 1-
n
の番号が付けられます。一致全体を含む暗黙的なグループ 0 が常に存在します。たとえば、次のパターンがあります。(a(b*))+(c)
次の 3 つのグループが含まれています:
group 1: (a(b*)) group 2: (b*) group 3: (c)
取得グループ
デフォルトでは、1 つのグループが一致を生成したテキスト
を取得し
、最新の一致のみが取得されます。次の基準 REGEX
関数は、正規表現の最初の取得グループに一致する文字列を返します。たとえば、上記の式への入力文字列が abc
、全体 REGEX
この関数は次と一致します abc
グループ 1 の結果のみを返します。結果は次のようになります。 ab
。取得不可グループ
場合によっては、サブパターンをグループ化する際に、テキストを取得するものの、かっこを使用することができます。取得しないグループが次の値で始まる:
(?:
(左かっこの後にクエスチョン マークとコロン)。たとえば、次のようになります。 h(?:a|i|o)t
一致 hat
または hit
または hot
、ただし、次の値は取得されません: a
、 i
、または o
部分式から。例
ユーザー名
(プロバイダ)
のパターンで考えられるすべての E メール アドレスを一致させてください。ドメイン ""
では、E メール
フィールドから E メール アドレスの プロバイダ
部分のみが返されます。REGEX([email], "^[a-zA-Z0-9._%+-]+@
([a-zA-Z0-9._-]+)
\.[a-zA-Z]{2,4}$")Web ログのリクエスト行と対応付けてください。値は次のフォーマットになります。
リクエストされた HTML ページ名のみを返します。GET /some_page.html HTTP/1.1
REGEX([weblog_request_line], "GET\s/
([a-zA-Z0-9._%-]+\.[html])
\sHTTP/[0-9.]+")からインチ部分を抽出します。
height
フィールド - 値の例: 6'2"
、 5'11"
(二重引用符を使用したリテラル引用符のエスケープに注意してください):REGEX([height], "\d\'(\d)+""")
"" のすべてのコンテンツを抽出
device
フィールド 値が次のいずれかの場合 iPod
、 iPad
、または iPhone
:REGEX([device], "(iP[ao]d|iPhone)")