String提供的方法是完全匹配
引入正则表达式:模糊匹配
就其本质而言,正则表达式(或 RE)是一种小型的、高度专业化的编程语言,
(在Python中)它内嵌在Python中,并通过 re 模块实现。
正则表达式模式被编译成一系列的字节码,然后由用 C 编写的匹配引擎执行。
字符匹配(普通字符,元字符):
1 普通字符:大多数字符和字母都会和自身匹配
>>> re.findall('alvin','yuanaleSxalexwupeiqi')
['alvin']
2 元字符:. ^ $ * + ? { } [ ] | ( ) \
.只能代指一个字符
^ 代指从开始匹配
$ 代指从结尾匹配
* 重复匹配前一个字符[0,+oo]
+ [1,+oo]
? [0,1]
{} 自定义匹配个数,也可以是一个区间
结论: * 等于{0,正无穷} + 等价于 {1,+oo} ? 等价于{0,1} 推荐前者,不推荐大括号
[] 字符集 : 取消元字符特殊功能(\ ^ - 例外)
- 在中括号里表示范围连接符 ^ 在[]表示取反匹配
\
元字符之转义符\
反斜杠后边跟元字符去除特殊功能,比如\.
反斜杠后边跟普通字符实现特殊功能,比如\d
\d 匹配任何十进制数;它相当于类 [0-9]。
\D 匹配任何非数字字符;它相当于类 [^0-9]。
\s 匹配任何空白字符;它相当于类 [ \t\n\r\f\v]。
\S 匹配任何非空白字符;它相当于类 [^ \t\n\r\f\v]。
\w 匹配任何字母数字字符;它相当于类 [a-zA-Z0-9_]。
\W 匹配任何非字母数字字符;它相当于类 [^a-zA-Z0-9_]
\b 匹配一个特殊字符边界,比如空格 ,&,#等
() 分组整组匹配
| 或匹配
正则表达式的方法
findall(): 所有结果都返回到一个列表里
search(): 返回匹配到的第一个对象,对象可以调用group()返回结果
match(): 只在字符串开始匹配
split():
Autor:VincentAdamNemessis
E-mail:vincent5519@yeah.net
QQ:3377299629
Wechat:ZTXLoveC3344