REGEXP_REPLACE関数は、文字列中のパターンに一致する部分を、正規表現に基づいて置き換える関数です。Tableauでのテキスト前処理やID整理に非常に役立ちます。
あわせて読みたい


世界一わかりやすい正規表現入門|誰でも理解できるルールと実例まとめ
正規表現(Regular Expression)とは、文字列の中から特定のパターンを見つけ出すための「ルール」のようなものです。 たとえば「福井県」を表現するにも、 福井県 ふく…
目次
REGEXP_REPLACE関数とは?
この関数には以下の機能があります:
- 指定した文字列に、正規表現に一致する部分があるかチェック
- 一致した部分があれば、すべて置き換える
- 一致がなければ元の文字列をそのまま返す
基本構文
REGEXP_REPLACE([対象フィールド], "正規表現", "置換後の値")
REGEXP_REPLACEとREPLACEの違い
両方とも文字列を置き換える関数ですが、REPLACEは固定文字列のみ対応、一方でREGEXP_REPLACEは柔軟なパターンに対応可能です。
単純な置換(同じ結果)
製品IDからハイフン(-)を取り除く:
REGEXP_REPLACE([製品ID], "-", "")
REPLACE([製品ID], "-", "")
どちらでも可能です。
複雑なパターンの置換(REGEXP_REPLACEが必要)
ハイフンと繋がった数字全体を削除
REGEXP_REPLACE([製品ID], "-[0-9]+", "")
REPLACEではこのような処理はできません。
ハイフンと繋がった1桁の数字だけ削除
REGEXP_REPLACE([製品ID], "-[0-9]", "")
ハイフン+数字3桁の先頭のみを削除
REGEXP_REPLACE([製品ID], "-([0-9])..", "")
このように、REPLACEでは不可能な柔軟な置換処理が可能です。
よく使う正規表現パターン(置換用)
パターン例 | 意味 | 用途例 |
---|---|---|
– | ハイフン | 単純な記号除去 |
[0-9]+ | 数字1文字以上 | 数字の塊(IDやコードの一部など) |
[A-Z]{3} | 大文字3文字 | 英文略語や国コード処理など |
[^a-zA-Z0-9] | 英数字以外の文字 | ノイズ文字の削除 |
\s | 空白(スペース) | 余計な空白の削除 |
注意点とヒント
- Tableauの正規表現はPerl互換のシンプル構文(完全なPCREではない)
- 置換後の文字列を””にすると削除と同義になります
- 正規表現内の特殊文字(例:\、.、+、*など)はエスケープが必要
実務活用例
製品コードのプレフィックス除去
REGEXP_REPLACE([製品コード], "^[A-Z]{2}-", "")
電話番号からハイフンをすべて削除
REGEXP_REPLACE([電話番号], "-", "")
住所から郵便番号だけを除去(例:〒123-4567)
REGEXP_REPLACE([住所], "〒[0-9]{3}-[0-9]{4}", "")
まとめ
REGEXP_REPLACE関数は、Tableauでの文字列整形に欠かせない関数です。特に、パターンが一定でないIDや形式がバラバラなデータに対して、柔軟かつ効率的に一括置換が行える点が最大のメリット。
固定パターンにはREPLACE、可変パターンにはREGEXP_REPLACE。この使い分けを覚えると、データ前処理の自由度が格段に向上します。
Comment