ORACLE正则表达式

来源:互联网 发布:淘宝寿衣 编辑:程序博客网 时间:2024/06/05 06:07
   

正则表达式中的元字符

元字符意思例子\说明要匹配的字符是一个特殊字符、常量或者后者引用。(后引用重复上一次的匹配)\n 匹配换行符
\\ 匹配 \
\( 匹配 (
\) 匹配 )^匹配字符串的开头位置如果A是字符串的第一个字符,^A 匹配 A$匹配字符串的末尾位置如果B是字符串的最后一个字符,$B 匹配 B*匹配前面的字符0次或多次ba*rk可以匹配 brk、bark、baark等等+匹配前面的字符1次或多次ba+rk可以匹配 bark、baark等等,但是不能匹配brk,也就是说,最少有以一次。?匹配前面的字符0次或1次ba?rk可以匹配 bark、brk等等,但是不能匹配baark。{n}匹配前面的字符恰好是n次,其中n是整数hob{2}it可以匹配hobbit{n,m}匹配前面的字符至少是n次,最多是m次,其中n,m都是整数hob{2,3}it可以匹配hobbit或者hobbbit.匹配除null以外的任意单个字符hob.it中的.可以是任意的单个字符,如:hobsit等等(pattern)括号中pattern是一个子正则表达式,匹配指定pattern模式的一个子表达式。如:aaa(x|y)可以匹配aaax或者aaay。x|y匹配“或”x|y可以匹配x或者y[abc]可以匹配abc中的任何单个字符hello[abc]可以匹配helloa,hellob,helloc[a-z]可以匹配指定范围内的任何单个字符hell[a-z]可以匹配hello或者hellz[::]指定一个字符类,可以匹配该类中的任何字符[:alphanum:]可以匹配字符0-9、A-Z、a-z
[:alpha:]可以匹配字符A-Z、a-z
[:blank:]可以匹配空格或tab键
[:digit:]可以匹配数字0-9
[:graph:]可以匹配非空字符
[:lower:]可以匹配小写字母a-z
[:print:]与[:graph:]类似,不同之处在于[:print:]包括空格字符
[:punct:]可以匹配标点符号.,""等等
[:space:]可以匹配所有的空字符
[:upper:]可以匹配大写字母A-Z
[:xdigit:]可以匹配十六进制数字0-9、A-F、a-f\n这是对前一次匹配命中的一个后引用,其中n是一个正整数(.)\1可以匹配两个连续相同的非空字符。(.)可以匹配除null以外的任何单个字符,而\1则重复上一次匹配的内容,即再次匹配相同的字符,因此可以匹配两个连续相同的非空字符

 另外,match option 可以是下面的

 ‘c’   说明在进行匹配时区分大小写(缺省值);
  'i'   说明在进行匹配时不区分大小写;
  'n'   允许使用可以匹配任意字符的操作符;
  'm'   将x作为一个包含多行的字符串。