PosegreSQL基础回顾(第 9 章 函数和操作符)[亲测有效]

PosegreSQL基础回顾(第 9 章 函数和操作符)[亲测有效]来源:http://www.postgres.cn/docs/11/ 9.7. 模式匹配 PostgreSQL提供了三种独立的实现模式匹配的方法:SQL LIKE操作符、更近一些的

PosegreSQL基础回顾(第 9 章 函数和操作符)

来源:http://www.postgres.cn/docs/11/

9.7. 模式匹配

 

PostgreSQL提供了三种独立的实现模式匹配的方法:SQL LIKE操作符、更近一些的SIMILAR TO操作符(SQL:1999 里添加进来的)和POSIX-风格的正则表达式。除了这些基本的这个串匹配这个模式吗?”操作符外,还有一些函数可用于提取或替换匹配子串并在匹配位置分离一个串。

9.7.1. LIKE

pattern里的下划线 (_)代表(匹配)任何单个字符; 而一个百分号(%)匹配任何零或更多个字符的序列。

要匹配文本的下划线或者百分号,而不是匹配其它字符, 在pattern里相应的字符必须 前导逃逸字符。缺省的逃逸字符是反斜线,但是你可以用ESCAPE子句指定一个不同的逃逸字符。 要匹配逃逸字符本身,写两个逃逸字符。 

关键字ILIKE可以用于替换LIKE, 它令该匹配根据活动区域成为大小写无关。这个不属于SQL标准而是一个PostgreSQL扩展。

操作符~~等效于LIKE, 而~~*对应ILIKE。 还有 !~~!~~*操作符分别代表NOT LIKENOT ILIKE。所有这些操作符都是PostgreSQL特有的。 

9.7.2. SIMILAR TO正则表达式

SIMILAR TO操作符根据自己的模式是否匹配给定串而返回真或者假。 它和LIKE非常类似,只不过它使用 SQL 标准定义的正则表达式理解模式。 

9.7.3. POSIX正则表达式

表 9.14列出了所有可用于 POSIX 正则表达式模式匹配的操作符。表 9.14. 正则表达式匹配操作符

操作符 描述 例子
~ 匹配正则表达式,大小写敏感 "thomas" ~ ".*thomas.*"
~* 匹配正则表达式,大小写不敏感 "thomas" ~* ".*Thomas.*"
!~ 不匹配正则表达式,大小写敏感 "thomas" !~ ".*Thomas.*"
!~* 不匹配正则表达式,大小写不敏感 "thomas" !~* ".*vadim.*"

 

POSIX正则表达式提供了比LIKESIMILAR TO操作符更强大的含义。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/8593.html

(0)
上一篇 2023-02-25
下一篇 2023-02-25

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注