REGEXP_COUNT用于為正則表達式搜索字符串,且返回正則表達式發生的時間信息。

語法

INTEGER REGEXP_COUNT
(
  srcstr    TEXT,
  pattern   TEXT,
  position  DEFAULT 1
  modifier  DEFAULT NULL
)        

參數

參數名稱 描述
srcstr 指定要搜索的字符串
pattern 指定REGEXP_COUNT要搜索的正則表達式
position position是一個整數值,用于表明REGEXP_COUNT要在源字符串中開始搜索的位置。缺省值為1。
modifier modifier用于指定控制模式匹配行為的值。缺省值為NULL。
說明 關于PolarDB所支持的修改器的完整列表,請參見PostgreSQL核心文件

示例

在下列簡單示例中,REGEXP_COUNT返回的是在字符串'reinitializing'中字母i的使用次數:

postgres=# SELECT REGEXP_COUNT('reinitializing', 'i', 1) FROM DUAL;
 regexp_count 
--------------
            5
(1 row)        

在第一個示例中,命令了REGEXP_COUNT開始在首位計數。如果我們要修改指令使其在第六位開始計數,那么就可以:

postgres=# SELECT REGEXP_COUNT('reinitializing', 'i', 6) FROM DUAL;
 regexp_count 
--------------
            3
(1 row)            

那么REGEXP_COUNT返回的就是3,且計數結果不包括任何出現在第六位之前的字母i。