python正则表达式,找到所有匹配的字符串

例如字符串abcd,希望得到匹配的结果ab,bc和cd,尝试如下:pattern=re.compile("([a-z]+[a-z]+)")arry=pattern.fin... 例如字符串a b c d,希望得到匹配的结果a b, b c和c d,尝试如下:

pattern = re.compile("([a-z]+ [a-z]+)")
arry = pattern.findall(“a b c d”)
但这样只能得到a b和c d,因为匹配到a b后,b不再作为待匹配的内容。有什么匹配方法可以得到a b, b c和c d这样的结果?
展开
 我来答
日TimE寸
推荐于2017-09-14 · TA获得超过9568个赞
知道大有可为答主
回答量:1358
采纳率:83%
帮助的人:480万
展开全部
import re

pattern = re.compile("(?=([a-z]+ [a-z]+))")
arry = pattern.findall("a b c d e f g h")

(?=...)匹配不会消耗字符

追问
谢谢你,你的答案很有参考性,能解决上面的简单case,如果arry = pattern.findall("aa bb cc dd"),就得不到想要的结果,能解决吗?

非常感谢你的回答,在你的提示下已经解决了:
pattern = re.compile("([a-z]+)(?=( [a-z]+))")
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式