Skip to content

适用虚谷数据库版本

v12.10.8



适用虚谷数据库版本

v12.10.8


REGEXP_SUBSTR

📄字数 544
👁️阅读量 加载中...

功能描述

从字符串中提取符合正则表达式模式的子串。

语法格式

sql
REGEXP_SUBSTR(expr1,expr2[,expr3[,expr4[,expr5]]])

输入参数

  • expr1:源字符串,可以是列名或者字符串常量、变量,VARCHAR类型。
  • expr2:正则表达式,VARCHAR类型。
  • expr3:可选参数,标识从第几个字符开始正则表达式匹配(默认为1),INTEGER类型。
  • expr4: 可选参数,指定第几次匹配(默认为1),INTEGER类型。
  • expr5:可选参数,匹配模式,VARCHAR类型,具体模式参考regexp_count

输出结果

输出结果为VARCHAR类型,任意输入参数为NULL,输出结果为NULL

执行类型

TYPEVALUE说明
NATIVE0函数只能在本地计算
VOLATI0函数的每次计算值不同
STABLE0函数的每次计算值相同
COMPUTE0函数支持预计算取值
NOT_CONST0函数不支持转常数
HAVE_DEF0函数参数有默认值

示例

SQL
-- 示例1:提取连续数字
SQL> SELECT REGEXP_SUBSTR('订单ID: 789, 数量: 456', '[0-9]+') FROM dual;

+-------+
| EXPR1 |
+-------+
| 789   |
+-------+

-- 示例2:从第5字符开始,取第2次匹配​
SQL> SELECT REGEXP_SUBSTR('a1,b2,c3,d4', '[^,]+', 5, 2) FROM dual;

+-------+
| EXPR1 |
+-------+
| c3    |
+-------+