regexp_instr_10克常规表达式(REGEXP_INSTR)

regexp_instr

REGEXP_INSTR

该函数返回模式的起始位置,因此其工作方式与熟悉的INSTR函数非常相似

句法:

REGEXP_INSTR(源字符串,模式[,开始位置[,出现[,返回选项[,匹配参数]]]]))

source_string-可以是CHAR,VARCHAR2,CLOB,NCHAR,NVARCHAR2和NCLOB的列,但不能是LONG数据类型

start_position-(可选)指示您要开始搜索的start_position

事件-除非您指示您正在寻找后续事件,否则出现参数默认为1

return_option-return_option的默认值为0,返回模式的起始位置。值为1则返回匹配后下一个字符的起始位置

例:

以下SQL查询返回字符串Joe Joe Smith(加利福尼亚州约瑟夫市圣约瑟夫市10045 Berry Lane 10045)中五位邮政编码模式的起始位置。


SELECT REGEXP_INSTR('Joe Smith, 10045 Berry Lane, San Joseph, CA 91234',
       '[[:digit:]]{5}$')
       AS rx_instr
  FROM dual  
  RX_INSTR
---------- 
        45  
如果将正则表达式写为[[:digit:]] {5},则将获得门牌号码的起始位置,而不是邮政编码的起始位置,因为10045是五个连续数字的第一个出现。 因此,必须将表达式锚定到该行的末尾(如$元字符所示),并且该函数将显示邮政编码的起始位置,而与门牌号的位数无关。

翻译自: https://bytes.com/topic/oracle/insights/738918-10g-regular-expressions-regexp_instr

regexp_instr

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值