REGEXP_REPLACE

ターゲット値内のテキストを置き換えます。

使用例

REGEXP_REPLACE(Campaign, '(Sale):(Summer)', '\\2 \\1')

構文

REGEXP_REPLACE( X, regular_expression, replacement )

パラメータ

  • X - フィールドまたはフィールドを含む式。
  • regular_expression - X の一部と一致する正規表現。
  • replacement - field_expression の一致した部分を置き換えるテキスト。

戻り値

REGEXP_REPLACE 関数は、Text 値を返します。

メモ

REGEXP_REPLACE は、regular_expression に一致する X のすべての部分文字列が X に置き換えられるテキストを返します。

replacement 引数内でバックスラッシュでエスケープされた数字(\1 ~\9)を使用して、対応する括弧で囲まれたグループと一致するテキストを regular_expression パターン内に挿入できます。一致するテキスト全体を参照するには、\0 を使用します。

正規表現でリテラル バックスラッシュを検索するには、リテラル バックスラッシュを 2 つ目のバックスラッシュでエスケープする必要があります。次に例を示します。

REGEXP_REPLACE('abc', 'b(.)', 'X\\1');

aXc を返します。

また、元の文字列を使用して、エスケープの 1 つのレイヤを削除することもできます。次に例を示します。

REGEXP_REPLACE('abc', 'b(.)', r'X\1');

REGEXP_REPLACE 関数は、重複しない一致のみを置き換えます。たとえば、banana に含まれる ana を置き換える場合、置き換えられるのは 2 つではなく、1 つのみです。

Example formula Input Output
REGEXP_REPLACE(LOWER(Campaign), ".bc123", "Summer Sale")

abc123

Summer Sale
REGEXP_REPLACE(LOWER(Campaign), ".bc123", "Summer Sale") BBC123 Summer Sale
REGEXP_REPLACE(Campaign, '(.*):(.*)', '\\2 \\1')

Sale:Summer

Summer Sale

REGEXP_REPLACE(Campaign, '(.*):(.*)', '\\2 \\1') Sale:Winter Winter Sale