regexp_instr和instr有啥区别

0 #BI&大数据 wudaxin7个月前

如上

回答 1 浏览 195
Spark.sun 7个月前

INSTR返回的是一个字符串在另外一个字符串中的位置。
SELECT INSTR(‘ABC123XYZ456’,’1’) as A FROM DUAL;

REGEXP_INSTR实现的功能与INSTR类似,不同的是REGEXP_INSTR用一个匹配模式(正则表达式)代替了具体的字符串,这样就提供了更大的灵活性。
SELECT REGEXP_INSTR(‘ABC123XYZ456’,’[0-9]+’) AS A FROM dual;

ORACLE中的支持正则表达式的函数主要有下面四个:
1,REGEXP_LIKE :与LIKE的功能相似
2,REGEXP_INSTR :与INSTR的功能相似
3,REGEXP_SUBSTR :与SUBSTR的功能相似
4,REGEXP_REPLACE :与REPLACE的功能相似
它们在用法上与Oracle SQL 函数LIKE、INSTR、SUBSTR 和REPLACE 用法相同。