zoukankan      html  css  js  c++  java
  • oracle的REGEXP_SUBSTR的用法

    function REGEXP_SUBSTR(String, pattern, position, occurrence, modifier)
    String     :需要进行正则处理的字符串
    pattern   :进行匹配的正则表达式
    position   :起始位置,从第几个字符开始正则表达式匹配(默认为1)
    occurrence:标识第几个匹配组,默认为1
    occurrence :模式('i'不区分大小写进行检索;'c'区分大小写进行检索。默认为'c'。)

    ----


    2.量词:?用来匹配0和1个字符
    *用来匹配0和多个字符
    +用来匹配1和多个字符
    A{3} 表示匹配3个字符A,
    A{3,} 三个或者多个字符A
    A{3,5}用来匹配3到5个字符A
    量词匹配遵循贪婪原则,量词?可取消贪婪原则
    3.字符转义和字符类
    和其他字符进行组合(包含元字符)
    单字符匹配; 换行 回车 制表符
    多字符匹配;s匹配空白符(空格、制表、回车、换行)
    d匹配数字
    w匹配可组成的单词
    【】用来定义字符的范围 【1,2】【0-9】【a-z】
    ^用来表示范围之外的字符【^a】
    4.字符组
    模式中的某些部分还可成为一个整体,用量词修饰
    (123as)+ 用来匹配123as123as
    编程语言中可用$1 $2用来获取第一个 第二个字符租
    5.正则表达式分支 | d{4}|w{4} 类似于逻辑关系or
    6.oracle 中应用
    regexp_like(列或者表达式中获取的string,匹配的string)返回布尔值
    regexp_instr(列或者表达式中得到的string,匹配表达式,匹配开始位置,匹配的第几次作为结果) 返回值为number
    regexp_substr()
    select id,regexp_substr(html,'http[a-zA-Z0-9.:/]*') url from html;
    结果返回html 列中符合http[a-zA-Z0-9.:/]中的字符创
    regexp_replace ()
    select regexp_replace('09/07/2001' ,'^([0-9]{2})/([0-9]{2})/([0-9]{4}) $),'3-21') replace from dual;
    ([0-9]{2})/([0-9]{2})/([0-9]{4})匹配09/07/2001
    3-21 重新排序输出缓存中的三个分组 并替换 09/07/2001

     

  • 相关阅读:
    2014年度辛星css教程夏季版第七节
    2014年度辛星css教程夏季版第六节
    2014年度辛星css教程夏季版第五节
    终于见识到垃圾站了
    2014年度辛星css教程夏季版第四节
    2014年度辛星css教程夏季版第三节
    2014年度辛星css教程夏季版第二节
    MySQL查询-分组取组中某字段最大(小)值所有记录
    PHP获取当前时间
    Mysql常用数据类型归纳总结1
  • 原文地址:https://www.cnblogs.com/thomasbc/p/11844806.html
Copyright © 2011-2022 走看看