正则表达式re模块的详解-python
1.元字符([ ]),它用来指定一个character class。所谓character classes就是你想要匹配的字符(character)的集合.字符(character)可以单个的列出,也可以通过"-"来分隔两个字符来表示一个范围。例如,[abc]匹配a,b或者c当中任意一个字符,[abc]也可以用字符区间来表示---[a-c].如果想要匹配单个大写字母,你可以用[A-Z]。
2.元字符[^]. 你可以用补集来匹配不在区间范围内的字符。其做法是把"^"作为类别的首个字符;其它地方的"^"只会简单匹配 "^"字符本身。例如,[^5] 将匹配除 "5" 之外的任意字符。同时,在[ ]外,元字符^表示匹配字符串的开始,如"^ab+"表示以ab开头的字符串。
3. 元字符(\),元字符backslash。做为 Python 中的字符串字母,反斜杠后面可以加不同的字符以表示不同特殊意义。
4.元字符($),匹配字符串的结尾或者字符串结尾的换行之前。
5.元字符(*),匹配0个或多个
6.元字符(?),匹配一个或者0个
7.元字符(+), 匹配一个或者多个
8,元字符(|), 表示"或",如A|B,其中A,B为正则表达式,表示匹配A或者B
9.元字符({})
re.match
- 在字符串的开始位置匹配,如果匹配成功将返回MatchObject(值为True),否则返回None(值为False)。
- 函数原型
def match(pattern, string, flags=0)
- 参数说明
- pattern:正则表达式
- string:要匹配的字符串
- flags:控制正则表达式的匹配方式,如:是否区分大小写,多行匹配等
re.search
- 检测整个字符串,找到第一个匹配项,如果匹配成功将返回MatchObject(值为True),否则返回None(值为False)。
- 函数原型
def search(pattern, string, flags=0)
- 参数说明
- pattern:正则表达式
- string:要匹配的字符串
- flags:控制正则表达式的匹配方式,如:是否区分大小写,多行匹配等
re.sub
- 将字符串中的匹配项替换为其他
- 函数原型
def sub(pattern, repl, string, count=0, flags=0)
- 参数说明
- pattern:正则表达式,匹配被替换的项
- repl:替换为该项
- string:要匹配的字符串
- count:替换的个数,默认为0时表示全部替换
re.split
- 根据匹配项来分割字符串
- 函数原型
def split(pattern, string, maxsplit=0, flags=0)
- 参数说明
- pattern:正则表达式
- string:要匹配的字符串
- maxsplit:最大的分割次数,默认为0时表示全部分割
re.findall
- 获取字符串中的所有匹配项
- 函数原型
def findall(pattern, string, flags=0)
- 参数说明
- pattern:正则表达式
- string:要匹配的字符串
re.compile
- 把正则表达式(以字符串书写的)编译成一个模式对象,提高一定的匹配效率,可用来重复使用
- 函数原型
def compile(pattern, flags=0)