gpt4 book ai didi

python - 使用正则表达式返回一对整数之间的任何值

转载 作者:行者123 更新时间:2023-11-30 22:07:57 25 4
gpt4 key购买 nike

到目前为止,这是我的解决方案

import re


def has_three_question_marks(word):
regex_pattern = re.compile(r"\d(\D+)\d")
matches = regex_pattern.findall(word)
for match in matches:
print(match)

print(has_three_question_marks("arrb6???4xxbl5???eee5"))

此解决方案的问题在于它返回 6 和 4、5 和 5 之间的匹配项,但不返回 4 和 5 之间的匹配项。

最佳答案

当前正则表达式与中间部分不匹配的原因是因为匹配重叠:第一个匹配的尾随数字是第二个匹配的前导数字。

最后尝试积极的前瞻:

regex_pattern = re.compile(r"\d(\D+)(?=\d)")

这样匹配就不会包含尾随数字,并且匹配也不会重叠。

关于python - 使用正则表达式返回一对整数之间的任何值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52334466/

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