Python re正则表达式多组匹配问题,python正则表达式,比如有这么一个字符串。"
Python re正则表达式多组匹配问题,python正则表达式,比如有这么一个字符串。"
比如有这么一个字符串。"xiaohong loves xiaoming,xiaozhu loves xiaoli,xiaopeng loves xiaozhao"。我希望用Python正则表达式提取出loves两边的人名来。
我这样写的。
names = re.search(r'(\S+) loves (\S+)',str, ) while names: print names.group(1) print names.group(2)
但是一直打印xiaohong,xiaoming.
希望知道正确的用法。看了几篇文档,好像没提及。
应当使用 find_all()
search的功能就是: 从左到右,去计算是否匹配,如果有匹配,就返回。 即只要找到匹配,就返回了。 所以,最多只会匹配一个, 而不会匹配多个。
findall可以全部匹配。
#!/usr/bin/python# -*- coding: utf-8 -*- import restr = 'xiaohong loves xiaoming,xiaozhu loves xiaoli,xiaopeng loves xiaozhao'names = re.findall(r'(\S+) loves (\S+)(,|$)',str, re.I)print namesif names: for group in names: print group[0], group[1]
编橙之家文章,
相关内容
- flask中蓝图blueprint作用是什么?,flaskblueprint,我在学习
- Python django开发网站发现的问题,pythondjango,最近在学习
- Python菜鸟要开发一个api怎么入手,python菜api入手,各位大
- 网易云音乐python爬虫api接口,网易python爬虫api,抓包能力
- Python map对象进行列表解析返回空列表正常吗,pythonma
- cmd运行程序时如何终止python socket服务端程序的操作,
- python multiprocessing返回结果的规则是什么,,from multipr
- 用python下载gitbook上的pdf书籍后 如何转化为html,python
- 防止爬虫IP被屏蔽的应对方法代码放在哪里有效果requ
- mongo 2.6.3释放已删除mongodb集合空间方法是什么,mongom
评论关闭