gpt4 book ai didi

python - 拆分返回不匹配

转载 作者:行者123 更新时间:2023-12-05 08:17:08 25 4
gpt4 key购买 nike

<分区>

当将 split 与模式中的一个捕获组结合使用时,Python 会返回意外的、不匹配的值。

例如,下面的代码应该返回“a”或一个数字。当您将它与 findall 一起使用时,它确实会执行此操作,但是 split 会返回不匹配项和空字符串。

x = re.compile(r'(a|-?[0-9]+)')

# returns ['45', '444', '19', 'a']
print(x.findall("45, 444 < 19, abc"))

# returns ['', '45', ', ', '444', ' < ', '19', ', ', 'a', 'bc']
print(x.split("45, 444 < 19, abc"))

预期的结果是 findall 所做的。我不明白为什么 split 的行为不同。

编辑:另外,当您不使用捕获组时,findall 仍然有效,但由于不返回匹配的结果,split 变得更糟。

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