regular-expression-base

限定符

**?:**表示某个字符需要出现0次或1次

1
used?   # 这样就可以匹配use和used

***:**表示某个字符可以出现0次或多次

1
2
3
4
# ab*c
ac
abc
abbbbc

**+:**表示某个字符需要出现1次以上

1
2
3
# ab+c
abc
abbbbbc

{…}:指定出现次数

1
2
3
4
5
6
# ab{2,6}c
abbc
abbbc
abbbbc
abbbbbc
abbbbbbc

()

1
2
3
4
# (ab)+
ab
abab
ababab

或运算符

1
2
3
# a (cat|dog)
a cat
a dog

字符类

1
2
3
4
5
6
7
8
9
10
11
12
13
# [abc]+
abc
aabbcc

# [a-zA-Z]+
abc
tiger
ABCD

# [^0-9] 表示非数字字符
abc
aabbcc
adfdg

元字符

\d:表示数字字符

\w:表示单词字符(英文、数字以及下划线)

\s:空白符(包含Tab和换行符)

\D:非数字字符

\W:非单词字符

\S:非空白字符

.:包含任意字符,除了换行符

^:匹配行首

$:匹配行尾

贪婪和慵懒

总结