MySQL 中使用 REGEXP 关键字指定正则表达式的字符匹配模式,下表列出了 REGEXP 操作符中常用的匹配列表:
特别注意:
特别注意转义字符的使用。需要转义字符包括 * . ? + ^ $ | \ / ( ) [ ] { }
具体说明如下:
*:
匹配前面的子表达式零次或多次。要匹配 * 字符,使用 \\*
.:
匹配除换行符 \n之外的任何单字符。要匹配 .,使用 \\.
?:
匹配前面的子表达式零次或一次,或指明一个非贪婪限定符。要匹配 ? 字符,使用 \\?
+:
匹配前面的子表达式一次或多次。要匹配 + 字符,使用 \\+
^:
匹配输入字符串的开始位置,除非在方括号表达式中使用,此时它表示不接受该字符集合。如果设置了 RegExp 对象的 Multiline 属性,则 ^ 也匹配 ‘\n' 或 ‘\r'之后的位置。要匹配 ^ 字符本身,使用 \\^
$:
匹配输入字符串的结尾位置。如果设置了 RegExp 对象的 Multiline 属性,则 $ 也匹配 ‘\n' 或 ‘\r'之前的位置。要匹配 $ 字符本身,使用 \\$,其中第一个\是转义\的,然后两个合起来才是\字符
\:
将下一个字符标记为或特殊字符、或原义字符、或向后引用、或八进制转义符。要匹配 \ 字符,使用 \\
/:
要匹配 / 字符,使用 \\/
|:
指明两项之间的一个选择。要匹配 |,使用 \\|
( ):
标记一个子表达式的开始和结束位置。子表达式可以获取供以后使用。要匹配这些字符,使用\\( 和 \\)
[ ]:
标记一个中括号表达式的开始。要匹配 [,使用 \\[ 和 \\]
{ }:
标记限定符表达式的开始。要匹配 {,使用 \\{ 和 \\}