【原创】如何治疗使用python中re模块group、grou…
2018-07-03 01:11:33来源:博客园 阅读 ()
>>> re.search('(book+)', 'mebookbookme').groups() ('book',) >>> re.search('(book+)', 'mebookbookme').group() 'book' >>> re.search('(book)+', 'mebookbookme').groups() ('book',) >>> re.search('(book)+', 'mebookbookme').group() 'bookbook' >>> re.findall('(book)+', 'mebookbookme') ['book'] >>> re.findall('(book+)', 'mebookbookme') ['book', 'book']
m.group() == m.group(0) == 展示匹配到的第一次满足正则表达式pattern的全部内容(所有匹配的字符)
m.groups() == (m.group(1), m.group(2), ...)
-
首先,分析下正则表达式book+和(book+)
>>> re.search('book+', 'mebookbookme') <_sre.SRE_Match object; span=(2, 6), match='book'> >>> re.search('(book+)', 'mebookbookme') <_sre.SRE_Match object; span=(2, 6), match='book'>
- 而search对于(book)+匹配到的全部内容是'bookbook'
>>> re.search('(book)+', 'mebookbookme') <_sre.SRE_Match object; span=(2, 10), match='bookbook'>
>>> re.search('(book)+', 'mebookbookme').group() 'bookbook'
>>> re.search('(book)+', 'mebookbookme').groups() ('book',)
>>> re.findall('(book)+', 'mebookbookme') ['book'] >>> re.findall('(book+)', 'mebookbookme') ['book', 'book']
★第一个findall对(book)+的展示,直接把+号重复的分组合并为一个单元来展示(这个跟search的groups对于(book)+的展示是一样的)
★第二个findall对(book+)的展示,则是把所有分组都展示出来
>>> re.findall('(ab)+(c)+', 'abcc123ababcccc') [('ab', 'c'), ('ab', 'c')]
>>> re.search('(book)+', 'mebookbookme').group() 'bookbook' >>> re.search('(book)+', 'mebookbookme').group(0) 'bookbook'
>>> re.search('((?:book)+)', 'mebookbookme').group(1) 'bookbook' >>> re.search('((?:book)+)', 'mebookbookme').groups()[0] 'bookbook'
>>> re.findall('(?:book)+', 'mebookbookme') ['bookbook'] >>> re.findall('(?:book)+', 'mebookbookme')[0] 'bookbook'
转载请注明出处:https://www.cnblogs.com/oceanicstar/p/9244783.html
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:Windows安装diango框架<一>
下一篇:实例:天天向上的力量
- 小白如何入门 Python 爬虫? 2019-08-13
- 我是如何自学python到找到高薪工作 2019-07-24
- 如何使用Python脚本分析CPU使用情况的? 2019-07-24
- 华为Python面试题(原创) 2019-07-24
- 学Python要避免哪些坑,如何巩固好基础 2019-07-24
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash