PostgreSQLで正規表現

  • 7
    Like
  • 0
    Comment

正規表現マッチ演算子

PostgreSQLには正規表現マッチ演算子というのがある。LIKEやILIKEでは表現しきれないパターンに使える。

演算子 説明
~ 正規表現に一致する。大文字小文字の区別あり。
~* 正規表現に一致する。大文字小文字の区別なし。
!~ 正規表現に一致しない。大文字小文字の区別あり。
!~* 正規表現に一致しない。大文字小文字の区別なし。

"~" が基本。
"~*" は "~" の大文字小文字の区別なし版。
"!~"、"!~*" はそれぞれ "~" と "~*" の否定。

例の結果
'abc' ~ '^a' true
'abc' ~* '^a' true
'abc' ~ '^A' false
'abc' ~* '^A' true
'abc' !~ '^a' false
'abc' !~* '^a' false
'abc' !~ '^A' true
'abc' !~* '^A' false

参考ページ

PostgreSQL 8.4.4文書 9.7. パターンマッチ