gpt4 book ai didi

python - 为什么 re.Match 对象返回的结束索引高于预期?

转载 作者:行者123 更新时间:2023-12-04 01:03:51 25 4
gpt4 key购买 nike

<分区>

我正在尝试了解 Python 中的正则表达式操作、字符串切片和字符串。

使用 .start() 和 .end() 进行字符串切片会产生预期的子字符串,如果我使用 .start() 从字符串中获取单个字符,则结果字符符合预期,但如果我使用使用 .end() 索引从字符串中提取单个字符,它不会产生预期的字符。

我知道列表(包括字符串)以元素零开头,但为什么此规则的异常(exception)是字符串切片的停止索引和重新匹配 .end() 索引?

>>> import re
>>> m = re.search("bake","123bake456")
>>> m
<re.Match object; span=(3, 7), match='bake'>
>>> m.span()
(3, 7)
>>> m.start()
3
>>> m.end()
7
>>> "123bake456"[m.start():m.end()]
'bake'
>>> "123bake456"[m.start()]
'b'
>>> "123bake456"[m.end()]
'4'

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com