正则表达式语法
--正则表达式语法
regexp_count(src, pattern[, pos[, match]])
regexp_instr(src, pattern[, pos[, occur[, retopt[, match[, subexpr]]]]])
regexp_like(src, pattern[, match])
regexp_substr(src, pattern[, pos[, occur[, match[, subexpr]]]])
regexp_replace(src, pattern[, replace_str[, pos[, occur[, match]]]])
参数释义
--参数释义:
/*
– src:需要用来进行分析的字符串,如 "aaaa","welcome","abc12cdg" 等;
– pattern:要匹配的正则表达式;
– pos:从源字符串的第几个字符开始匹配;
– occur:指定pattern的第几次出现;
– retopt:返回选项,regexp_instr专用。用于设置返回值是pattern出现之时的位置还是之后
的位置。 0代表前者,1代表后者;
– replace_str:要替换成的字符串,可以使用正则表达式中的后向引用操作符;
– subexpr:regexp_instr和regexp_substr特有。指定返回pattern的
第几个子表达式。 0表示返回整个pattern匹配的字符串。例如0123(((abc)(de)f)ghi)45(678)
就包含abcdefghi、 abcdef、 abc、 de、 678这五个子串(已按顺序排列);
– match:匹配参数配置,让正则更易用。
‘i’ 用于不区分大小写的匹配
‘c’ 用于区分大小写的匹配
‘n’ 允许句点(.)作为通配符去匹配换行符。如果省略该参数,则句点将不匹配换行符
‘m’ 将源串视为多行。即Oracle 将^和$分别看作源串中任意位置任何行的开始和结束,而不是仅仅看作整个源串
的开始或结束。如果省略该参数,则Oracle将源串看作一行。
‘x’ 忽略空格字符。默认情况下,空格字符与自身相匹配。
*/
字符簇
--字符簇
[[:alpha:]] 任何字母。
[[:digit:]] 任何数字。
[[:alnum:]] 任何字母和数字。
[[:space:]] 任何空白字符。
[[:upper:]] 任何大写字母。
[[:lower:]] 任何小写字母。
[[:punct:]] 任何标点符号。
[[:xdigit:]] 任何16进制的数字,相当于[0-9a-fA-F]。