python正则表达式的使用

yipeiwu_com6年前Python基础

python的正则是通过re模块的支持

匹配的3个函数

match :只从字符串的开始与正则表达式匹配,匹配成功返回matchobject,否则返回none;

re.match(pattern, string, flags=0) ##flags标志位,用于控制正则表达式的匹配方式,如:是否区分大小写,多行匹配等等。

search :将字符串的所有字串尝试与正则表达式匹配,如果所有的字串都没有匹配成功,返回none,否则返回matchobject;(re.search相当于perl中的默认行为)

findall方法,返回所有的与给定的表达式匹配的一个list;

使用

mypatten = re.compile("规则") ##定义匹配的规则
myresult = mypatten.match("字符串") ##匹配结果

if myresult:

  print myresult.group()##括号中可以填数字也可以  命名分组  (?P<name>正则表达式)#name是一个合法的标识符

search于match一样

mypatten = re.compile("规则") ##定义匹配的规则
myresult = mypatten.findall("字符串") ##返回的是个列表 如果里面有分组返回的是个二维列表

if myresult: 

print myresult.group()

以上所述是小编给大家介绍的python正则表达式的使用,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!

相关文章

Django模型修改及数据迁移实现解析

Migrations Django中对Model进行修改是件麻烦的事情,syncdb命令仅仅创建数据库里还没有的表,它并不对已存在的数据表进行同步修改,也不处理数据模型的删除。 如果你...

一个小示例告诉你Python语言的优雅之处

比如, 我们希望希望检测"一段string是否以特定的字符串结尾?", 通常我们使用: if needle.endswith('ly') or needle.endswi...

python内存管理分析

python内存管理分析

本文较为详细的分析了python内存管理机制。分享给大家供大家参考。具体分析如下: 内存管理,对于Python这样的动态语言,是至关重要的一部分,它在很大程度上甚至决定了Python的执...

Python MySQLdb 使用utf-8 编码插入中文数据问题

最近帮伙计做了一个从网页抓取股票信息并把相应信息存入MySQL中的程序。 使用环境: Python 2.5 for Windows MySQLdb 1.2.2 for Python 2....

Python 中的lambda函数介绍

Lambda函数,即Lambda 表达式(lambda expression),是一个匿名函数(不存在函数名的函数),Lambda表达式基于数学中的λ演算得名,直接对应于其中的lambd...