对于正则表达式,第一眼看过去就是各种符号,不知所云,其实当你记住了其中的元字符后再来看,就会发现其实一直是那么几个字符,开始可能读起来很慢,但写多了,读多了就自然快起来了。
那么首先我们来介绍一下什么是正则表达式:
正则表达式相当于一种查找的命令,但是它并不能单独存在,当我们需要查找一些复杂字符时,使用正则会更加的方便,可以将它们看作一串特殊的字符串。
其次,我们来看一下正则中的元字符、量词、方括号:
. 查找单个字符
\w 查找单词字符
\W 查找非单词字符
\d 查找数字
\D 查找非数字字符
\s 查找空白字符
\S 查找非空白字符
\b 匹配单词边界
\B 匹配非单词边界
\n 查找换行符
量词:
n+ 匹配任何包含至少一个n的字符串
n* 匹配任何包含零个或者多个n的字符串
n? 匹配任何包含零个或者一个n的字符串
n{x} 包含x个n的序列的字符串
n{x,y} 匹配包含x至y个n的序列的字符串
n$ 匹配任何结尾为n的字符串
^n 匹配任何开头为n的字符串
*(贪婪) 重复零次或更多
+(懒惰) 重复一次或更多次
?(占有) 重复零次或一次
方括号:
[abc] 查找方括号之间的任何字符
[^abc] 查找任何不在方括号之间的字符
[0-9] 查找任何从0至9的数字
[a-z] 查找任何从a-z的字母
[A-Z] 查找任何大写A到大写Z的字符
[A-z] 查找任何从大写A到小写z的字符
正则表达式的应用:
1、查找单词
2、删除字符串中开头和结尾的空格
3、格式化:将原字符串中的关键词按照新的规则从新组合
4、替换:将字符串中的内容替换为其它内容