原文链接
* 正则表达式入门
1.正则表达式的两种基本用途:搜索和替换。
2.正则表达式是一些用来匹配和处理文本的字符串。
小结:正则表达式是文本处理方面功能最强大的工具之一,正则表达式语言用来构造正则表达式,正则表达式用来完成搜索和替换操作。
* 匹配单个字符
1.匹配纯文本:
文本:Hello , my name is Ben. Please visit my website at http://www.forta.com/ .
正则表达式:Ben
结果:Hello , my name is Ben. Please visit my website at http://www.forta.com/ .
2.匹配任意字符:
“.”元字符可以匹配任何一个单个的字符。
3.匹配特殊字符:
“”元字符可以对有含义的字符进行转义。
小结:正则表达式经常被简称为模式,它们其实是一些由字符构成的字符串。这些字符可以是普通字符(纯文本)或元字符(特殊含义的字符)。“.”可以匹配任何字符。“”用来对字符进行转义。
* 匹配一组字符
1.匹配多个字符中的某一个:
“[”和“]”元字符定义一个字符集合。
在使用“[”和“]”定义的字符集合里,这两个字符之间的所有字符都是该集合的组成部分,字符集合的匹配结果是能够与该集合里的任意一个成员相匹配的文本。
2.利用字符集合区间:
正则表达式提供了一个特殊的元字符,字符区间可以用“-”(连字符)来定义。
字符区间:[A-Z]、[a-z]、[A-z]、[A-Za-z0-9]
Ps:区间外为“-”本身,无需转义
3.取非匹配:
“^”元字符表明对一个字符集合进行取非匹配。
取非:[^0-9]:匹配任何不是数字的字符
小结:元字符“[”和“]”用来定义一个字符集合,其含义是必须匹配该集合里的字符之一。定义一个字符集合的具体做法有两种:一是把所有的字符都列举出来;二是利用元字符“-”以字符区间的方式给出。字符集合可以以元字符“^”来求非,这将把给定的字符集强行排除在匹配操作以外,除了该字符集合里的字符,其他字符都可匹配。
* 使用元字符
1.元字符:是在正则表达式里有特殊含义的字符。
元字符分类: ①匹配文字(例如“.”)
②正则表达式语法要求(例如“[”“]”)
2.匹配空白字符:
元字符 |
说明 |
[] |
回退(并删除)一个字符 |
f |
换页符 |
|
换行符 |
|
回车符 |
|
制表符 tab键 |
v |
垂直制表符 |
3.匹配特定的字符类别:
①匹配数字与非数字(数字元字符)
元字符 |
说明 |
d |
任何一个数字字符 = [0-9] |
D |
任何一个非数字字符= [^0-9] |
②匹配字符与数字 和 非字母与数字
元字符 |
说明 |
w |
任何一个字母数字或下划线字符 = [a-zA-Z0-9_] |
W |
任何一个非字母数字或非下划线字符 = [^a-zA-Z0-9_] |
③匹配空白字符与非空白字符
元字符 |
说明 |
s |
任何一个空白字符=[f v] |
S |
任何一个非空白字符=[^f v] |
④匹配十六进制或八进制数值
元字符 |
说明 |
x |
十六进制X0A = ASCII(10)= |