1 字符
语法 | 说明 |
---|---|
. | 任意字符,在单行模式(s标志)下,也可以匹配换行 |
[xyz] | 字符类 |
[^xyz] | 否定字符类 |
d | Perl 字符类 |
D | 否定 Perl 字符类 |
[[:alpha:]] | ASCII 字符类 |
[[:^alpha:]] | 否定 ASCII 字符类 |
pN | Unicode 字符类 (one-letter name) |
p{Greek} | Unicode 字符类 |
PN | 否定 Unicode 字符类 (one-letter name) |
P{Greek} | 否定 Unicode 字符类 |
参考以下附录,获取具体字符类的内容:
- Perl 字符类
- ASCII 字符类
- Unicode 字符类 (one-letter name)
- Unicode 字符类
go.hellokang.net 可以获取相关内容
2 组合
语法 | 说明 |
---|---|
xy | xy(x 后跟随 y) |
x|y | x 或 y (优先匹配 x) |
3 重复次数
语法 | 说明 |
---|---|
x* | 零个或多个 x,贪婪 |
x+ | 一个或多个 x,贪婪 |
x? | 零个或一个 x,贪婪 |
x{n,m} | n 到 m 个 x,贪婪 |
x{n,} | n 个或多个 x,贪婪 |
x{n} | n 个 x |
x*? | 零个或多个 x,非贪婪 |
x+? | 一个或多个 x,非贪婪 |
x?? | 零个或一个 x,非贪婪 |
x{n,m}? | n 到 m 个 x,非贪婪 |
x{n,}? | n 个或多个 x,非贪婪 |
x{n}? | n 个 x |
4 分组子模式
语法 | 说明 |
---|---|
(re) | 编号捕获组(子匹配) |
(?Pre)> | 命名编号捕获组(子匹配) |
(?:re) | 非捕获组(子匹配) |
(?flags) | 设置标记对组后表达式生效,非捕获 |
(?flags:re) | 组内设置标记,非捕获 |
标志语法是:
语法 | 说明 |
---|---|
xyz | 设置 |
-xyz | 清除 |
xy-z | 设置 xy,清除 z |
支持的标志:
语法 | 说明 |
---|---|
i | 大小写不敏感,(默认 false) |
m | 多行模式: ^ 和 $ 匹配行开始和结束而不是匹配文本的开头和结尾(默认 false) |
s | 令 . 匹配 n (默认 false) |
U | 非贪婪:交换 x 和 x? 的意义,x+ 和 x+?,等 (默认 false) |
5 位置(零宽字符)
语法 | 说明 |
---|---|
^ | 设置标记 m 则匹配行首,否则匹配整个文本的开头(m 默认为 false) |
$ | 设置标记 m 则匹配行尾,否则匹配整个文本的结尾(m 默认为 false) |
A | 整个文本的开头,忽略 m 标记 |
b | 单词边界 |
B | 非单词边界 |
z | 整个文本的结尾,忽略 m 标记 |
6 转义字符类
语法 | 说明 | |
---|---|---|
a | 响铃符 (相当于 x07) | |
f | 换页符 (相当于 x0C) | |
t | 横向制表符(相当于 x09) | |
n | 换行符 (相当于 x0A) | |
r | 回车符 (相当于 x0D) | |
v | 纵向制表符(相当于 x0B) | |
123 | 8 進制编码所代表的字符(必须是 3 位数字) | |
x7F | 16 進制编码所代表的字符(必须是 3 位数字) | |
x{10FFFF} | 16 進制编码所代表的字符(最大值 10FFFF ) | |
Q…E | Q 和 E 之间的文本,忽略文本中的正则语法 | |
\ | ||
^ | ^ | |
$ | $ | |
. | . | |
* | * | |
+ | + | |
? | ? | |
{ | { | |
} | } | |
( | ( | |
) | ) | |
[ | [ | |
] | ] | |
\ |
7 命名字符类 作为 字符类 的元素
语法 | 说明 |
---|---|
[d] | 数字 (相当于 d) |
[^d] | 非数字 (相当于 D) |
[D] | 非数字 (相当于 D) |
[^D] | 数字 (相当于 d) |
[[:name:]] | 命名的“ASCII 类”包含在“字符类”中 (相当于 [:name:]) |
[^[:name:]] | 命名的“ASCII 类”不包含在“字符类”中 (相当于 [:^name:]) |
[p{Name}] | 命名的“Unicode 类”包含在“字符类”中 (相当于 p{Name}) |
[^p{Name}] | 命名的“Unicode 类”不包含在“字符类”中 (相当于 P{Name}) |
特别声明:以上文章内容仅代表作者本人观点,不代表变化吧观点或立场。如有关于作品内容、版权或其它问题请于作品发表后的30日内与变化吧联系。
- 赞助本站
- 微信扫一扫
-
- 加入Q群
- QQ扫一扫
-
评论