如题

解决方案 »

  1.   

    REGEXP_SUBSTR 函数 REGEXP_SUBSTR 函数的 REGEXP_SUBSTR 函数用来提取一个字符串的一部分。表 8 显示了这个新函数的语法。在下面的示例中,匹配模式 [^,]* 的字符串将被返回。该正规表达式搜索其后紧跟着空格的一个逗号;然后按 [^,]* 的指示搜索零个或更多个不是逗号的字符,最后查找另一个逗号。这种模式看起来有点像一个用逗号分隔的值字符串。 SELECT REGEXP_SUBSTR('first field, second field , third field',
    ', [^,]*,')
    FROM dual
    REGEXP_SUBSTR('FIR
    ------------------
    , second field , REGEXP_REPLACE 函数 让我们首先看一下传统的 REPLACE SQL 函数,它把一个字符串用另一个字符串来替换。假设您的数据在正文中有不必要的空格,您希望用单个空格来替换它们。利用 REPLACE 函数,您需要准确地列出您要替换多少个空格。然而,多余空格的数目在正文的各处可能不是相同的。下面的示例在 Joe 和 Smith 之间有三个空格。REPLACE 函数的参数指定要用一个空格来替换两个空格。在这种情况下,结果在原来的字符串的 Joe 和 Smith 之间留下了一个额外的空格。 SELECT REPLACE('Joe Smith',' ', ' ')
    AS replace
    FROM dual
    REPLACE
    ---------
    Joe Smith 
      

  2.   

    regexp_substr(group_name,'[0-9]*',1,2)这个函数后面两个参数是什么意思-----意思是: 从第1位开始匹配,取符合正则表达格式的第2串字符. ok?例如:
    SQL> select regexp_substr('2323dfasfa','[0-9]*[0-9]',1,2) from dual;REGEXP_SUBSTR('2323DFASFA','[0   -- 这里没取到数字,因为没有第2串符合的
    ------------------------------
    SQL> select regexp_substr('2323dfasfa83483','[0-9]*[0-9]',1,2) from dual;REGEXP_SUBSTR('2323DFASFA83483
    ------------------------------
    83483               -- 取到第2串数字