正则表达式findall start()和end()?Python
发布时间:2020-12-14 06:06:09 所属栏目:百科 来源:网络整理
导读:我正在尝试使用re.findall按顺序获取查询的开始和结束位置 import resequence = 'aaabbbaaacccdddeeefff'query = 'aaa'findall = re.findall(query,sequence) ['aaa','aaa'] 我如何得到像findall.start()或findall.end()的东西? 我想得到 start = [0,6]end
我正在尝试使用re.findall按顺序获取查询的开始和结束位置
import re sequence = 'aaabbbaaacccdddeeefff' query = 'aaa' findall = re.findall(query,sequence) >>> ['aaa','aaa'] 我如何得到像findall.start()或findall.end()的东西? 我想得到 start = [0,6] end = [2,8] 我知道 search = re.search(query,sequence) print search.start(),search.end() >>> 0,2 只会给我第一个例子 解决方法
使用
re.finditer :
>>> import re >>> sequence = 'aaabbbaaacccdddeeefff' >>> query = 'aaa' >>> r = re.compile(query) >>> [[m.start(),m.end()] for m in r.finditer(sequence)] [[0,3],[6,9]] 来自文档:
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |