Skip to content

REGEXP_COUNT

功能描述

统计字符串出现的次数。

语法格式

REGEXP_COUNT(expr1,expr2[,expr3[,expr4]])

参数说明

  • expr1:源字符串,可以是列名或者字符串常量、变量。
  • expr2:正则表达式。
  • expr3:标识从第几个字符开始正则表达式匹配。
  • expr4:匹配选项,取值范围如下:
    • i:大小写不敏感。
    • c:大小写敏感。
    • n:允许句点(.)作为通配符去匹配换行符,如果省略该参数,则句点将不匹配换行符。
    • m:将源串视为多行,即将^和$分别看作源串中任意位置任何行的开始和结束,而不是仅仅看作整个源串的开始或结束,如果省略该参数,则将源串看作一行。
    • x:忽略空格字符,默认情况下,空格字符与自身相匹配。

注意:

  • 如果指定了多个相互矛盾的匹配选项,将使用最后一个选项。例如,如果指定'ic',将使用区分大小写的匹配;如果指定的选项不属于上述范围,则报错。

  • 如果忽略expr4,则是否区分大小写依照系统参数CATA_CASE_SENSITIVE的值确定(此参数的默认值是区分大小写的)。

  • 句点不匹配换行符。

  • 源字符串被视为单行。

函数返回类型

INTEGER类型

示例

sql
SQL> SELECT REGEXP_COUNT('asdasadaa','a');

EXPR1 | 
------------------------------------------------------------------------------
5 |