Python正则表达式对象如何解决相关问题

Python正则表达式对象在我们的使用中有很多问题需要引起我们注意。下面我们就来看看如何进行Python正则表达式对象的相关技术应用。希望对大家有所帮助。

产生方式:通过

 
 
 
  1. re.compile(pattern,[flags])回 
  2. match( string[, pos[, endpos]]) ;返回string[pos,endpos]匹配 
  3. pattern的MatchObject

Python代码

 
 
 
  1. split( string[, maxsplit = 0]) 
  2. findall( string[, pos[, endpos]]) 
  3. sub( repl, string[, count = 0]) 

这几个函数和re模块内的相同,只不过是调用形式有点差别

re.几个函数和 正则表达式对象的几个函数,功能相同,但同一程序如果
多次用的这些函数功能,正则表达式对象的几个函数效率高些

matchobject

通过 re.match(……) 和 re.compile(……).match返回

该对象有如下方法和属性:

方法:

 
 
 
  1. group( [group1, ...]) 
  2. groups( [default]) 
  3. groupdict( [default]) 
  4. start( [group]) 
  5. end( [group]) 

说明这几个函数的***方法,就是举个例子

 
 
 
  1. matchObj = re.compile(r”(?P\d+)\.(\d*)”) 
  2. m = matchObj.match(’3.14sss’) 
  3. #m = re.match(r”(?P\d+)\.(\d*)”, ‘3.14sss’) 
  4. print m.group() 
  5. print m.group(0) 
  6. print m.group(1) 
  7. print m.group(2) 
  8. print m.group(1,2) 
  9. print m.group(0,1,2) 
  10. print m.groups() 
  11. print m.groupdict() 
  12. print m.start(2) 
  13. print m.string 

输出如下:

 
 
 
  1. 3.14 
  2. 3.14 
  3. 14 
  4. (’3′, ‘14′) 
  5. (’3.14′, ‘3′, ‘14′) 
  6. (’3′, ‘14′) 
  7. {’int’: ‘3′} 
  8. 3.14sss 

所以group() 和group(0)返回,匹配的整个表达式的字符串,另外group(i) 就是正则表达式中用第i个“()” 括起来的匹配内容 (’3.14′, ‘3′, ‘14′)最能说明问题了。

标题名称:Python正则表达式对象如何解决相关问题
网页URL:http://www.csdahua.cn/qtweb/news47/424597.html

网站建设、网络推广公司-快上网,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网