ターゲット値内のテキストを置き換えます。
使用例
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 つのみです。
例
| 数式の例 | 入力 | 出力 |
|---|---|---|
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 |