python 正则表达式 我想找到字符串中成对匹配的数据 请指教

[复制链接]
查看11 | 回复2 | 2012-11-16 15:50:55 | 显示全部楼层 |阅读模式
针对你所给的示例字符串,貌似无法一次性地提取出后面的那个abc的,只能提取出前面的ammmmmde:可以这样写:>>> re.findall(r'(?:\d+)([a-zA-Z]+)', 'sssa 123ammmmmde234abc aaaaa 123ammmmmde234abc llll')['ammmmmde', 'abc', 'ammmmmde', 'abc']原因在于:正则从左往右查找,没有在找后面的abc时,也去找到之前的abc。因为之前的abc,被在查找ammmmmde时,藏在中间了:123ammmmmde234abc aaaaa 123ammmmmde搜索过了,后面没法再搜索。一个折中...
回复

使用道具 举报

千问 | 2012-11-16 15:50:55 | 显示全部楼层
>>> print re.findall(r'((?[a-zA-Z]+)\d+(?[a-zA-Z]+)数组a是ammmmmde数组b是abc...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行