您的位置:首页 > 编程语言 > Python开发

python中的re模块,常用函数介绍

2017-07-20 16:14 656 查看
参考: http://www.cnblogs.com/tina-python/p/5508402.htm
========

1,预定义字符集,可以写在字符集[....]中

\d 数字:

\D 非数字

\s 匹配任何空白字符

\S 非空白字符

\w 匹配包括下划线在内的任何字符

\W 匹配非字母字符,即匹配特殊字符

\A 仅匹配字符串开头,同^

\Z 仅匹配字符串结尾,同$

\b 匹配\w和\W之间,即匹配单词边界

\B [^\b]

2,特殊用法

(?P<name>) 分组,除了原有的编号为再指定一个额外的别名

(?P=name)引用别名为<name>的分组匹配的字符串

\<number>引用编号为<number>的分组匹配到字符串

3,re模块中常用的功能函数

3.1 compile()

编译正则表达式,返回一个对象的模式。

格式:

re.compile(pattern,flags=0)

pattern:编译时用的表达式字符串

flags 编译标志位,用于修改正则表达式的匹配方法,如:是否区分大小写,多行匹配

常用的flags有:

标志含义
re.S(DOTALL)使.匹配包括换行在内的所有字符
re.I (ignorecase)使匹配对大小写不敏感
re.L (locale)做本地化识别(local-aware),语法
re.M (multiline)多行
re.X (verbose)
re.Uunicode 字符集解析
#coding:utf-8

import re
def token_stream(line):
return re.findall(r'\w+',line,re.I)

tt = "Tina is a good girl, she is cool, clever, and so on..."
rr = re.compile(r'\w*oo\w*')
print(rr.findall(tt))


3.2 match

3.3 search

3.4 findall

3.5 finditer

3.6 split

3.7 sub

3.8 subn
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: