【Tableau関数】REGEXP_MATCHの使い方をわかりやすく解説!正規表現判定が可能に!

REGEXP_MATCHは正規表現と一致しているかどうかを判定してくれる関数です。

目次

REGEXP_MATCH関数とは?

REGEXP_MATCH関数には3つの機能があります。

  1. 指定値の中に正規表現に一致する値があるかどうかを判定
  2. 一致した値があればTRUEを返す
  3. 一致したものがなければFALSEを返す

REGEXP_MATCH関数の書式

REGEXP_MATCH関数の書式
REGEXP_MATCH([指定値],正規表現)

正規表現は下記を参考にしてみてください。

REGEXP_MATCHの使い道

私がよく使う場面としては、CONTAINS()の代わりとしててです。
↓のような運用って結構ありませんか?

IF CONTAINS([判別項目],"検索文字")
OR CONTAINS([判別項目],"検索文字2")
OR CONTAINS([判別項目],"検索文字3")
THEN "検索OK"
ELSE "その他"
END

特定文字が含まれているかどうかを判定する場合ですね。
上記みたいに3パターンぐらいならいいですが、これが10個20個といくと管理も大変です。

そんな時にREGEXP_MATCHは便利です。
置き換えてみると

IF
REGEXP_MATCH([判別項目],"検索文字|検索文字2|検索文字3")
THEN "検索OK"
ELSE "その他"
END

シュッとして見やすいです。

完全一致もできる

↓みたく、先頭と終端を固定すればOKです。

IF
REGEXP_MATCH([判別項目],"^検索文字$|^検索文字2$|^検索文字3$")
THEN "検索OK"
ELSE "その他"
END

よく使うパターン

アルファベットを含むかどうか

REGEXP_MATCH([判別項目],"[A-Za-z]")
REGEXP_MATCH([判別項目],"[A-z]")

数字を含むかどうか

REGEXP_MATCH([判別項目],"[0-9]")

特定の文字から始まるかどうか

特定の文字で始まるかどうか

REGEXP_MATCH([判別項目],"^あ")

↑は”あ”から始まる文字です。

特定の文字で始まり特定の文字で終わる

REGEXP_MATCH([判別項目],"^あ.*お$")

“あ”から始まって”お”で終わる文字列がTRUEとなります。

おわり

もっと良い使い方、おかしい点、アドバイスなどあれば気軽にコメントください!

福井AI/データサイエンス協会

読んでくれてありがとうございます!!

Comment

コメントする

目次