位置: 编程技术 - 正文

PostgreSQL 正则表达式 常用函数的总结(pg 正则表达式)

编辑:rootadmin

推荐整理分享PostgreSQL 正则表达式 常用函数的总结(pg 正则表达式),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:plsql 正则,pg 正则表达式,plsql中正则表达式,pg数据库正则表达式函数,pg数据库正则表达式函数,psql正则匹配,pg数据库正则表达式函数,pg数据库正则表达式函数,内容如对您有帮助,希望把文章链接给更多的朋友!

PostgreSQL 正则表达式 常用函数的总结

对那些需要进行复杂数据处理的程序来说,正则表达式无疑是一个非常有用的工具。本文重点在于阐述 PostgreSQL 的一些常用正则表达式函数以及源码中的一些函数。

正则相关部分的目录结构

正则表达式编译、匹配、释放、错误信息相关文件,后面再做具体介绍

内置函数实现在 regexp.c

内置函数声明:

参数类型及返回值类型:

substring(string from pattern)函数提供了从字符串中抽取一个匹配 POSIX 正则表达式模式的子字符串的方法。如果没有匹配它返回 NULL ,否则就是文本中匹配模式的那部分。

regexp_replace(source, pattern, replacement [, flags ])函数提供了将匹配 POSIX 正则表达式模式的子字符串替换为新文本的功能。

regexp_matches(string, pattern[, flags ])函数返回一个从匹配POSIX正则表达式模式中获取的所有子串结果的text数组。参数flags是一个可选的text字符串,含有0或者更多单字母标记来改变函数行为。标记g导致查找字符串中的每个匹配,而不仅是第一个,每个匹配返回一行。

regexp_split_to_table(string, pattern[, flags ])函数使用POSIX正则表达式模式作为分隔符,分隔字符串。返回结果为string。。

PostgreSQL 正则表达式 常用函数的总结(pg 正则表达式)

regexp_split_to_array (string, pattern[, flags ])函数与regexp_split_to_table行为相同,但,返回结果为text数组。

具体使用参考用户手册。

src/include/regex/regex.h

regex_t 结构体

存放编译后的正则表达式

regmatch_t 结构体

成员rm_so 存放匹配文本串在目标串中的开始位置,rm_eo 存放结束位置。通常我们以数组的形式定义一组这样的结构。

有下面几个主要的函数声明

处理正则表达式常用的函数有 pg_regcomp()、pg_regexec()、pg_regfree() 和 pg_regerror()。

一般处理步骤:编译正则表达式 pg_regcomp(),匹配正则表达式 pg_regexec(),释放正则表达式 pg_regfree()。

pg_regerror() :当执行regcomp 或者regexec 产生错误的时候,就可以调用这个函数而返回一个包含错误信息的字符串。

参数说明

flags

src/backend/utils/adt/regexp.c

选项 描述 b 剩余的正则表达式是 BR c 大小写敏感匹配(覆盖操作符类型) e 剩余的正则表达式是 ERE i 大小写不敏感匹配(覆盖操作符类型) m n的历史同义词 n 新行敏感匹 p 部分新行敏感匹配 q 重置正则表达式为一个文本("引起")字符串,所有都是普通字符。 s 非新行敏感匹配(缺省) t 紧语法 w 反转部分新行敏感("怪异")匹配 x 扩展的语法

本文链接地址:https://www.jiuchutong.com/biancheng/348699.html 转载请保留说明!

上一篇:linux采用binary方式安装mysql(linux /bin/false)

下一篇:mysql修改开启允许远程连接的方法(修改mysql用户权限)

免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

鄂ICP备2023003026号

网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

友情链接: 武汉网站建设 电脑维修 湖南楚通运网络