regexp_count() 是一个系统函数,用于返回一个 POSIX 正则表达式在字符串中出现的次数。
regexp_count() 在 PostgreSQL 15 中被添加。
用法
regexp_count (stringtext,patterntext[,startinteger[,flagstext] ] ) →integer
命名参数从 PostgreSQL 18 开始可用。
可以在 PostgreSQL 文档中找到标志列表: ARE 嵌入选项字母。不支持 'g' 标志。
变更历史
- PostgreSQL 18
- 添加了对参数名称的支持(提交 580f8727)
- PostgreSQL 15
- 已添加(提交 64243370)
示例
regexp_count() 的基本执行示例
postgres=# SELECT regexp_count('foobarboopzoo', 'o{1,}');
regexp_count
--------------
3
(1 row)
计算字符串中从第四个字符开始出现的次数
postgres=# SELECT regexp_count('foobarboozoo', 'o{1,}', 4);
regexp_count
--------------
2
(1 row)
参考资料
- PostgreSQL 文档: 其他字符串函数
- PostgreSQL 文档: POSIX 正则表达式
