python学习之正则表达式
2016-01-07 13:43
771 查看
python的re模块提供了有关正则表达式的方法。
常用方法与属性:
compile(pattern,flags=0) ---- 返回一个正则表达式对象,也就是说生成一个正则表达式模板,在多次使用同一个表达式的时候这个方法可以提高效率;
search(pattern,string,flags=0)-----返回一个match 对象;
match(pattern,string,flags=0)-----返回一个match对象;
search与match的区别是:match是从string的第一个字符开始匹配,如若第一个字符串没有匹配到,则返回None。search是对string的任何位置进行匹配。
sub(pattern,repl,string, count=0, flags=0);pattern参数是正则表达式;repl参数是匹配之后所需要替换的,可以是字符串或者函数;string参数是目标字符串。
-----返回的是一个新字符串;
subn(pattern,repl,string, count=0, flags=0) -----返回的是一个tuple(new_string,number_of_subs_mode);
purge() -----清除正则表达式缓存;
escape()-------对字符串中的非字母数字进行转义;
split(pattern,string,count=0,flags=0) ----根据pattern在string匹配,并在匹配处对string进行分割,返回的是一个list,list里面包含分割后的字符串集合;
====================================================================================
正则表达式对象(Regular Expression Objects)
一般通过re.compile(pattern)得到一个正则表达式对象;
常用方法:
search(string[,pos[,endpos]]) ----返回一个match对象。
View Code
start([group])
end([group])
输出:'tony@tiger.net'
span([group])------返回一个tuple(起始,结束);
一般在写正则表达式的时候我们习惯 r'正则' ,省去了好多的转义。
常用方法与属性:
compile(pattern,flags=0) ---- 返回一个正则表达式对象,也就是说生成一个正则表达式模板,在多次使用同一个表达式的时候这个方法可以提高效率;
search(pattern,string,flags=0)-----返回一个match 对象;
match(pattern,string,flags=0)-----返回一个match对象;
search与match的区别是:match是从string的第一个字符开始匹配,如若第一个字符串没有匹配到,则返回None。search是对string的任何位置进行匹配。
sub(pattern,repl,string, count=0, flags=0);pattern参数是正则表达式;repl参数是匹配之后所需要替换的,可以是字符串或者函数;string参数是目标字符串。
-----返回的是一个新字符串;
subn(pattern,repl,string, count=0, flags=0) -----返回的是一个tuple(new_string,number_of_subs_mode);
purge() -----清除正则表达式缓存;
escape()-------对字符串中的非字母数字进行转义;
split(pattern,string,count=0,flags=0) ----根据pattern在string匹配,并在匹配处对string进行分割,返回的是一个list,list里面包含分割后的字符串集合;
====================================================================================
正则表达式对象(Regular Expression Objects)
一般通过re.compile(pattern)得到一个正则表达式对象;
常用方法:
search(string[,pos[,endpos]]) ----返回一个match对象。
m = re.match(r"(?P<first_name>\w+) (?P<last_name>\w+)", "Malcolm Reynolds") m.groupdict()
View Code
start([group])
end([group])
email = "tony@tiremove_thisger.net" m = re.search("remove_this", email) email[:m.start()] + email[m.end():]
输出:'tony@tiger.net'
span([group])------返回一个tuple(起始,结束);
一般在写正则表达式的时候我们习惯 r'正则' ,省去了好多的转义。
相关文章推荐
- 5.1. More on Lists(列表的所有方法)
- Python最常犯的10个错误
- Dijkstra算法python的实现(有向图/无向图)
- python 解析 配置文件
- python小点心--set
- Python Web 实现Ajax调用
- python---if语句
- 管理员'90youyueo' 在'麦子学院Python Web-2群'的公告
- UliPad ----python 开发利器
- python logging 单例模式范例
- uwsgi启动
- python出现Non-ASCII character '\xe7' in file ex6.py on line 1, but no encoding declare错误
- 计算利润提成(与个人所得税的计算方法类似)
- fatal error: Python.h: No such file or directory
- python学习手册 简记
- python将图片进行BASE64编码
- OpenCV Python教程系列
- DOTA2比赛赛前预测算法的研究(一)--介绍
- leetcode之Merge Two Sorted Lists
- Python编写一个Python脚本