re模块函数的应用
Python中的re模块提供了对正则表达式的支持。虽然Python中有一个string模块用来对字符串进行处理,但是string模块只能进行简单的操作。
而使用re模块可以完成对复杂字符串的操作。它提供了一下几类对字符串进行操作的函数。
匹配和搜索
re.match()函数用于在字符串中匹配正则表达式,如果匹配成功,则返回MatchObject对象实例。
re.search()函数用于在字符串中查找正则表达式,如果找到,则返回MatchObject对象实例。
re.findall()函数用于在字符串中查找所有符合正则表达式的字符串,并返回这些字符串的列表。
如果在正则表达式中使用了组,则返回一个元组。
re.match()和re.search()函数的作用基本一样。不同的是,re.match()函数只从字符串中第一个字符开始匹配。
而re.search()函数则搜索整个字符串。以上三个函数的原型如下
re.match(pattern, string[, flags])
re.search(pattern, string[, flags])
re.findall(pattern, string[, flags])
其参数含义如下。
pattern: 匹配模式。
string: 要进行匹配的字符串。
flags: 可选参数,进行匹配的标志。
参数flags可以是以下选项。
re.I 忽略大小写。
re.L 根据本地设置而更改\w、\W、\b、\B、\s、\S的匹配内容。
re.M 多行匹配模式
re.S 使’.‘元字符匹配换行符。
re.U 匹配Unicode字符。
re.X 忽略pattern中的空格,并且可以使用"#“注释
上述的几个编译标志可以同时使用。同时使用几个编译标志时,需要使用”|“对并用的编译标志进行运算。
以下实例使用上述函数进行匹配和搜索。
|
|