Python正则如何提取文本中span=(179, 331)区间内的全部字符
实现方法
方法1:直接按已知区间切片
Python 字符串的切片规则和re模块返回的span区间规则完全一致(左闭右开),你已经确认了目标区间是(179,331),直接执行以下代码即可:
print(txt[179:331])
方法2:从匹配对象自动获取区间(推荐,避免手动抄录索引出错)
你可以先保存两个正则匹配的返回对象,直接从对象中提取起止索引,不需要手动记录span数值:
# 先获取两个匹配对象,不要直接打印 match_v1 = new_v1.search(txt) match_v2 = new_v2.search(txt) # 增加非空判断,避免匹配不到时报错 if match_v1 and match_v2: # 取第一个匹配的起始位置,第二个匹配的结束位置 target_text = txt[match_v1.start() : match_v2.end()] print(target_text)
补充说明:
- 匹配对象的
start()方法返回匹配结果的起始索引,等价于span()[0] - 匹配对象的
end()方法返回匹配结果的结束索引,等价于span()[1]
内容的提问来源于stack exchange,提问作者TMask
相关产品推荐
相关产品推荐

