\b
单词的开头或者结尾,即单词分界处
eg:1) 正则表达式---->hi 可匹配的内容hi him history
2) 正则表达式---->\bhi\b 可匹配的内容只有 hi
.
匹配除换行符以外的任意字符
\d
元字符:匹配一个数字
\s
匹配任意的空白符,包括空格、制表符、换行符、中文全角空格等
\w
匹配字母或数字或汉字或下划线
*
不代表字符,不代表位置,代表数量。指定*前面的内容连续重复0次或更多次
+
不代表字符,不代表位置,代表数量。指定*前面的内容连续重复1次或更多次
?
不代表字符,不代表位置,代表数量。指定*前面的内容连续重复0次或1次
{n}
不代表字符,不代表位置,代表数量。指定*前面的内容连续重复n次
{n,}
不代表字符,不代表位置,代表数量。指定*前面的内容连续重复n次或更多次
{n,m}
不代表字符,不代表位置,代表数量。指定*前面的内容连续重复n次到m次
^
匹配字符串的开始
$
匹配字符串的结束
\
如果需要查找元字符本身,为了不被解释成其他意思,需要加上转义字符
eg: 需要查找*,应当写成\*
[]
匹配没有预定义的元字符的集合,只需写到[]中
eg:[aeiou] 匹配任意一个元音字符
[0-9] 匹配0~9之间任意一个字符
[0,1,2] 匹配0 1 2中的任意一个或者多个
()
用于重复多个字符
eg:(\d{1,3}\.){3}
反义:
需要查找不属于某个字符类的字符时使用
\W 匹配任意不是字母、数字、下划线、汉字的字符
\D 匹配任意非数字的字符
\S 匹配任意不是空白符的字符
[^x] 匹配除了x以外的任意字符
[^aeiou] 匹配除了aeiou以外的任意字符
-
非元字符,只匹配自己本身
参考:http://www.bejson.com/knownjson/regexJiaocheng/