三种模式匹配的方法
-
传统 SQL 的 LIKE 操作符。
-
SQL99 新增的 SIMILAR TO 操作符
-
POSIX 风格的正则表达式
LIKE 操作符
-
%:代表 0 个活任意个字符
-
_:代表任意一个字符
-
\:用于转译 % 和 _
-
ESCAPE:使用指定成其他的字符
-
\\:连续两个转义符去除其特殊的意义。
-
~~:等效于 LIKE
-
~~*:等效于 ILIKE
-
!~~:等效于 NOT LIKE
-
!~~*:等效于 NOT ILIKE
SIMILAR TO 操作符
-
只有匹配整个字符串时才能成功,也使用下划线和百分号进行匹配
-
也支持如下与 POSIX 正则表达式相同的模式匹配元字符
-
|:表示两个候选项之一
-
*:表示重复前面的项零次或更多次
-
+:表示重复前面的项一次或更多次
-
?:表示重复前面的项零次或一次
-
{m}:表示重复前面的项 m 次
-
{m,}:表示重复前面的项 m 次或更多次
-
{m,n}:表示重复前面的项至少 m 次,不超过 n 次。
-
():可以作为项目分组到一个独立的逻辑项中。
-
[...]:声明一个字符类,就像 POSIX 正则表达式
正则表达式操作符
-
~:匹配正则表达式,区分大小写。
-
~*:匹配正则表达式,不分大小写。
-
!~:不匹配正则表达式,区分大小写
-
!~*:不匹配正则表达式,不分大小写。