普通字符
- 字母、数字、汉字、干哈就线,以及没有特殊含义的标点符号,都是普通字符,匹配时,匹配的是和表达式相同的一个字符
普通转义字符
\n
换行符\t
制表符\\
代表\
本身\^
\$
\*
\+
\|
\.
\?
\(
\)
\[
\]
\{
\}
代表这些字符的本身^
$
*
+
|
.
?
(
)
[
]
{
}
标准字符集合
\d
任意一个数字, 0-9中的任意一个\w
任意一个字母或数字或下划线,A-Za-z0-9中的任意一个\s
包括空格,制表,换行等空白字符中的任意一个.
小数点可以匹配任意字符(除了换行)
自定义字符集合
[]
方括号匹配方式 , 就能匹配方括号中的任意一个字符
[ac@7]
代表匹配"a"或"c"或"@"或"7"中的任意其中一个字符[^ABC]
代表除了"A","B","C"以外的任意一个字符(取反),就是不要这三个字母[b-g]
代表 字符b到字符g 这两个之间的任意一个字符(bcdefg)[^A-F5-9]
代表除了 A至F 5至9以外的任意一个字符- 正则表达式的特殊符号,被包含在方括号中去,则失去其特殊意义,当然除了
^
-
之外 - 标准字符集合,除了小数点,如果被包含在方括号,自定义字符集合也将包含该集合,比如
[\d.\-+]
则匹配数字
、小数点
、-
、+
量词
修饰匹配次数的特殊符号
{n}
n为非负整数,匹配确定n次{n,}
n为非负整数,匹配最少n次{n,m}
m和n均为非负整数,其中n<=m。最少匹配n次且最多匹配m次?
匹配0次或1次 相当于{0,1}
+
匹配最少1次 相当于{1,}
*
匹配任意次数包括0次(不出现) 相当于{0,}
- 匹配次数中的贪婪模式 匹配字符越多越好 这是默认的
- 匹配次数中的非贪婪模式 (匹配字符越少越好 可以在匹配的修饰符的特殊符号 加上一个“?”号)