正则表达式 知识量:10 - 22 - 55
如果已经划定了一个匹配的范围(一个集合),只要属于其中某一个字符就可以匹配,这时可以使用元字符“[”和“]”来定义这个范围(也就是一个集合)。
文本:
football basketball tennis baseball volleyball golf handball
正则表达式:
...[ted]ball
结果:
Match | Position | Length |
---|---|---|
football | 0 | 8 |
sketball | 11 | 8 |
baseball | 27 | 8 |
handball | 52 | 8 |
假设如果要匹配的集合是这样的:[0123456789],那么存在一种简写方式,即:[0-9]。[0-9]是一个字符集合区间,表示从0到9的十个数字。
字符区间并不限于数字,字母也可以,例如:
A-Z:匹配从A到Z的所有大写字母。
a-z:匹配从a到z的所有小写字母。
A-G:匹配从A到G的所有大写字母。
A-Za-z0-9:匹配任何字母(无论大小写)或数字。
文本:
football0 basketball9 tennis5 baseball8 volleyball6 golf4 handball3
正则表达式:
[a-z]ball[0-6]
结果:
Match | Position | Length |
---|---|---|
tball0 | 3 | 6 |
yball6 | 45 | 6 |
dball3 | 61 | 6 |
需要特别注意的是:
定义字符区间时,一定要确保首字符小于尾字符。
-(连字符)是一个特殊的元字符,作为元字符只能用在[]之内。在其他地方它只是个普通的“-”字符,匹配本身时不需要进行转义。
Copyright © 2017-Now pnotes.cn. All Rights Reserved.
编程学习笔记 保留所有权利
MARK:3.0.0.20240214.P35
From 2017.2.6