码迷,mamicode.com
首页 > 其他好文 > 详细

正则表达

时间:2018-06-19 18:54:22      阅读:141      评论:0      收藏:0      [点我收藏+]

标签:obj   color   arc   none   import   one   bsp   imp   部分   

import re
m = re.match(.+t5,dfgt5ab)
print (m)#dfgt5ab匹配成功
m = re.match(t5,t5abcd)
print (m)#t5abcd匹配成功,从开头就要匹配上
m = re.search([0-9],ab45cf)
print(m.group(0))#4匹配成功.不一定从开头就匹配上


strr = re.sub([0-9], f, df34gg)
print (strr)#dfffgg
m = re.findall([0-9],54dgg5t)
print (m)
m = re.split([0-9],dgg55t)
print (m)

运行结果:

<_sre.SRE_Match object; span=(0, 5), match=‘dfgt5‘>

<_sre.SRE_Match object; span=(0, 2), match=‘t5‘>

4

dfffgg

[‘5‘, ‘4‘, ‘5‘]

[‘dgg‘, ‘‘, ‘t‘]

 

 

注意match,search返回的是,匹配成功返回一个正则对象,不成功返回none. 而对于search的返回,我们一般会调用group方法

 

 

下面说下group

下面一个正则表达式:

 

output_(\d{4})

 

该正则表达式用括号()包围了一个小的正则表达式,\d{4}。 这个小的正则表达式被用于从结果中筛选想要的信息(在这里是四位数字)。这样被括号圈起来的正则表达式的一部分,称为群(group)。

我们可以m.group(number)的方法来查询群。group(0)是整个正则表达的搜索结果,group(1)是第一个群……

 

import re
m = re.search("output_(\d{4})", "output_1986.txt")
print (m.group(0))#output_1986
print(m.group(1))#1986

我们还可以将群命名,以便更好地使用m.group查询:

 

import re
m = re.search("output_(?P<year>\d{4})", "output_1986.txt")   #(?P<name>...) 为group命名
print(m.group("year"))

 

正则表达

标签:obj   color   arc   none   import   one   bsp   imp   部分   

原文地址:https://www.cnblogs.com/saolv/p/9200580.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!