正则表达式(Regular Expressions)
正则表达式(Regular expressions) 有两个用处:
在Python中通过re模块引用正则表达式。
当你定义了一个正则表达式,可以用re.match功能辨别字符是否匹配。
为了避免字符上的混淆,我们可以用 r"expression" 来表示字符串。
例如:
另外一个匹配功能是 re.search 和 re.findall.
re.search 在一组字符串的 任意位置 找到匹配项。
re.findall 将 所有 匹配字符返回到 一个列表 。
例如:
结果:
正则搜索有以下几种methods:
例如:
结果:
另外在re模块中还有个特别重要的正则式:sub。
语法规则:
re.sub(pattern, repl, string, max=0)
这个方法将在string处查找pattern中的字符,然后替换为repl的字符,最后返回修改后的语句。
例如:
结果:
元字符使得正则表达式比一般字符方法更加强大。
第一个元字符是 .(原点) 。
他的作用是匹配任何一个单字字符(除了换行符号)。
例如:
接下来两个元字符是 ^ 和 $ ,作用分别是匹配一个字符的 开始 和 结束 。
例如:
字符类提供了一个匹配一组特定字符中唯一字符的方法。
用中括号来创建一组字符类。
例如
字符类也能匹配字符域,比如:
[a-z]匹配所有小写字符。
[G-P]匹配所有大写字符。
[0-9]匹配所有数字。
多个域可以合到一个类里。比如[A-Za-z]可以匹配26个字母中任意一个。
^放置于字符类的开头,用于反置,即匹配除字符类之外的字符。
更多的元字符包括:
***** 表示0或更多次重复。
例如:
+ 类似于*,表示1或更多次重复。
例如:
? 表示重复1或0次。
例如: