qinglong1234 发表于 2013-1-14 09:02:32

orcal10G正则表达式

 
Oracle使用正则表达式离不开这4个函数:
 
REGEXP_LIKE (srcstr, pattern, modifier ) 
__srcstr        :检索字符串
__pattern      :匹配模式
__modifier      :检索模式('i'不区分大小写进行检索;'c'区分大小写进行检索。默认为'c'。)
__return type :boolean
 
2. regexp_substr
REGEXP_SUBSTR(srcstr, pattern, position, occurrence, modifier)
 
__srcstr        :检索字符串
__pattern      :匹配模式
__position     :搜索srcstr的起始位置(默认为1)
__occurrence:搜索第几次出现匹配模式的字符串(默认为1)
__modifier     :检索模式('i'不区分大小写进行检索;'c'区分大小写进行检索。默认为'c'。)
 
3. regexp_instr
REGEXP_INSTR(srcstr, pattern, position, occurrence, returnparam, modifier)
 
__srcstr         :检索字符串
__pattern       :匹配模式
__position       :搜索srcstr的起始位置(默认为1)
__occurrence  :搜索第几次出现匹配模式的字符串(默认为1)
__returnparam :返回该子串在srcstr中的位置(0表示头位置,1表示尾位置+1,默认为0。)
__modifier       :检索模式('i'不区分大小写进行检索;'c'区分大小写进行检索。默认为'c'。)
 
4. regexp_replace
REGEXP_REPLACE(srcstr, pattern, replacestr, position, occurrence, modifier)
 
__srcstr         :检索字符串
__pattern       :匹配模式
__replacestr   :新的子串(默认值为NULL)
__position       :srcstr的检索起始位置(默认为1)
__occurrence  :替换第几次出现匹配模式的字符串(默认为0)
__modifier       :检索模式('i'不区分大小写进行检索;'c'区分大小写进行检索。默认为'c'。)
 
注:srcstr可用字段名也可输入字符串
附常用表达式
 
元字符

含义

例子

\

转义符,匹配特殊字符
\n,匹配换行符
\\,匹配反斜线“\”
\(,匹配左括号“(”
\),匹配右括号“)”
^

匹配字符串开头位置
^A,匹配以A打头字符
$

匹配字符串结尾位置
A$,匹配以A结尾字符
*

匹配前面字符0次或是多次
ab*c,可以匹配ac、abc、abbc等等
+

匹配前面字符1次或是多次
ab+c,可以匹配abc、abbc、abbbc等等
?

匹配前面字符0次或1次
ab?c,可以匹配ac、abc
{n}

匹配一个字符n次,n为整数
ab{2}c,可以匹配abbc
{n,m}

匹配一个字符至少n次,最多m次
ab{2,3}c,可以匹配abbc、abbbc
(pattern)

匹配指定模式的一个子表达式
ab(a|b),可以匹配aba、abb
x|y

匹配x或y
ab|cd,可以匹配ab、cd
[:alphanum:]

匹配字母、数字
可以匹配字符0-9、A-Z和a-z
[:alpha:]

匹配字母
可以匹配字符A-Z和a-z
[:blank:]

匹配空格或tab键

[:digit:]

匹配数字0-9

[:graph:]

匹配非空字符

[:lower:]

匹配小写字母a-z

[:upper:]

匹配大写字母A-Z

[:xdigit:]

匹配十六进制数字0-9、A-F和a-f

[:punct:]

匹配标点符号.,”等等

 [:space:]
 
匹配所有的空格符
 
页: [1]
查看完整版本: orcal10G正则表达式