文章目录
- ?(可有可无)
- * (没有或者一个或者多个)
- + (表示一个或者多个)
- {} (表示具体数字或者范围个数)
- ()+ (表示括号里的字符出现一次或者多次)
- (a|b)(或运算符表示a或者b)
- [ab]+ (由ab组成的)
- [a-zA-Z0-9]+ (表示英文包括大小写数字全匹配)
- [^0-9]+ (表示非数字匹配,包括换行符)
- 元字符 \d+ (表示全数字匹配)
- \w+ (表示全字母全数字匹配)
- \s (表示空白符包括Tab和换行符)
- \D+ (表示非数字匹配)
- \W+ (表示非数字字母匹配)
- \S+ (表示非空白字符)
- .* (表示任意字符不包括换行符)
- ^匹配行首,$匹配行尾
- \b (表示字符边界)
- <.+> (默认贪婪匹配任意字符)
- <.+?> (默认懒惰匹配任意字符)
- (?=。。。) (匹配。。。在目标之后的字段)
- (?!。。。) (匹配。。。不在目标之后的字段)
- ## (?<=。。。) (匹配。。。在目标之前的字段)
- ## (?<!。。。) (匹配。。。不在目标之前的字段)
?(可有可无)
?作用于?之前的字符表示该字符可有可无
例如
u?se
可以匹配
se use
* (没有或者一个或者多个)
*作用于 之前的字符,表示该字符可以没有可以一个或者多个
例如
use
可以匹配
se use uuuuse
不可匹配
rse dse (se之前不可有其他字符)
+ (表示一个或者多个)
+作用与+之前的字符,表示该字符有一个或者多个
例如
u+se
可以匹配
use uuse uuuse
不可匹配
se ese
{} (表示具体数字或者范围个数)
{}作用于{}之前的字符,表示具体数字或者范围个数
例如
u{3}se
可以匹配
uuuse (其他不可以匹配)
例如2
u{2,4}se
可以匹配
uuse uuuse uuuuse
例如3
u{2,}se
可以匹配
uuse uuuuse uuuuuuuuse (u无上限)
()+ (表示括号里的字符出现一次或者多次)
()+作用于括号里面的字符表示括号里的字符出现一次或者多次
例如
u(se)+r
可以匹配
useseseser useser
(a|b)(或运算符表示a或者b)
(a|b)作用于括号内,表示括号里的字符匹配a或者匹配b
例如
u(s|e)r
可以匹配
usr uer
注意:这里的括号是不可省略
否则us|er
可以匹配
us er (us或者er)
[ab]+ (由ab组成的)
[ab]+ 作用于[]内 表示以ab所组成的,a组成的,b组成的
例如
[ab]+
可以匹配
a b ab aaaab abbbb abababa
[a-zA-Z0-9]+ (表示英文包括大小写数字全匹配)
[^0-9]+ (表示非数字匹配,包括换行符)
元字符 \d+ (表示全数字匹配)
\d 表示单个数字匹配
相当于[0-9]+
\w+ (表示全字母全数字匹配)
\w 表示单个字母数字匹配
相当于[a-zA-Z0-9]+ (包括下划线)
\s (表示空白符包括Tab和换行符)
\D+ (表示非数字匹配)
\W+ (表示非数字字母匹配)
\S+ (表示非空白字符)
.* (表示任意字符不包括换行符)
^匹配行首,$匹配行尾
\b (表示字符边界)
<.+> (默认贪婪匹配任意字符)
<.+?> (默认懒惰匹配任意字符)
(?=。。。) (匹配。。。在目标之后的字段)
例如
userldz
(?ldz)
可以匹配
user
(?!。。。) (匹配。。。不在目标之后的字段)
例如
userldz usee
(?!user)
可以匹配
usee
## (?<=。。。) (匹配。。。在目标之前的字段)
例如
userldz
(?<=user)
可以匹配
ldz
## (?<!。。。) (匹配。。。不在目标之前的字段)
例如
userldz ldz
(?<!user)
可以匹配
ldz