前言:今天先分享正则表达式的基础元字符,后续会分享正则表达式的子表达式,回溯引用,前后查找,嵌入条件,,全部分享完成之后,会尝试着去分享一些例子与拆分介绍。如果文字描述有问题可以评论指出,如果概念很模糊,可以加我微信,我会尽量解答你的疑惑。
一>>>正则表达式的定义
正则表达式,又称规则表达式。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。
二>>>正则表达式的字符区间
[]这个元符号可以定义一个字符集合,字符集合能够与在该集合里的字符区间的字符相匹配。字符区间可以使用 - 连字符来定义范围。
A-Z 匹配从A到Z的所有大写字母
a-z 匹配从a到z的所有小写字母
A-Y 匹配从A到Y的所有大写字母
A-z 匹配从ASCII字符A到ASCII字符z的所有字母
-只能在[]间出现,出现在[]外面,相等于匹配-
三>>>正则表达式取非
1 匹配非数字
2 匹配非英文
3 匹配非空白符
四>>>正则表达式的空白元字符
[b] 回退并删除一个字符(backspace)
f 换页符
n 换行符
r 回车符
v 垂直制表符
t 制表符tab键
注:rn是windows使用的文本行结束标签,n是unix/linux的文本行结束标签
五>>>正则表达式的其他元字符
d 匹配任何一个数字字符
D 匹配任何一个非数字字符
w 匹配任何一个字母数字字符(大小写)或者下划线字
符=[0-9a-zA-Z_]
W 匹配任何一个非字母数字或非下划线字符
=[^0-9a-zA- Z_]
s 匹配任何一个空白字符=[frntv]
S 匹配任何一个非空白字符=4
六>>>正则表达式匹配字符
- 匹配一个或多个字符
- 匹配零个或者多个,可有可无,可多可少
? 匹配零个或者一个字符 举例:http与https
{} 可以设定匹配字符的次数
{3} 匹配三次
{4,8} 匹配最少4次,最多8次
{3,} 匹配重复最少3次
七>>>正则表达式的贪婪型字符与懒惰型字符
* + 为贪婪性元字符,在进行匹配时,行为模式是多多益善而不是适可而止的,会尽可能的从一段文本的开头一直匹配到文本的末尾,而不是从这段文本的开头匹配到碰到的第一个匹配是为止。
懒惰型字符相反。
贪婪型字符 懒惰型字符
* *?
+ +?
{n,} {n,}?
八>>>正则表达式边界字符
w相匹配的字符叫做单词边界,W相匹配的叫做非单词边界
b单词边界字符,例如:至匹配 at 而不匹配 what,可以使用 --batb
B匹配一个前后都不是单词边界的连字符(-),nine-digit不能匹配,color - coded的连字符(-)可以匹配
关注JAVA知识分享与总结公众号,获取更多!
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。