re模块与正则表达式之间的关系
# 正则表达式不是python独有的 它是一门独立的技术
# 所有的编程语言都可以使用正则
# 但是如果你想在python中使用,你就必须依赖于re模块
正则表达式的定义
# 正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑
字符组
# 在同一个位置可能出现的各种字符组成了一个字符组,
在正则表达式中用[]表示字符分为很多类,比如数字、字母、标点等等
[0123456789] 匹配所有的数字
用-表示范围
[0-9] 匹配所有的数字
[a-z] 匹配所有的小写字母
[A-Z] 匹配所有的大写字母
[0-9a-fA-F] 匹配数字,大小写形式的a~f,用来验证十六进制字符
元字符
元字符 匹配内容
# . 匹配除换行符以外的任意字符
# w 匹配字母或数字或下划线
# s 匹配任意的空白符
# d 匹配数字
# W 匹配非字母或数字或下划线
# D 匹配非数字
# S 匹配非空白符
#
匹配一个换行符
# 匹配一个制表符
# 匹配一个单词的结尾
# ^ 匹配字符串的开始
# $ 匹配字符串的结尾
# a|b 匹配字符a或字符b
# () 匹配括号内的表达式,也表示一个组
# [...]匹配字符组中的字符
# [^...]匹配除了字符组中字符的所有字符
量词
# 量词 用法说明
# * 重复零次或更多次
# + 重复一次或更多次
# ? 重复零次或一次
# {n} 重复n次
# {n,} 重复n次或更多次
# {n,m} 重复n到m次