gpt4 book ai didi

python - 匹配给定模式后的第二个数字

转载 作者:太空宇宙 更新时间:2023-11-03 13:40:57 25 4
gpt4 key购买 nike

我有这种字符串

hello 45 blabla 12 100 code 45 13 093bb 

我想匹配关键字 code 之后的第二个数字(使用 Python)。在此示例中,应返回 "13"


这是我找到的解决方案

s = "hello 45 blabla 12 100 code 45 13 093bb "
re.search("code \d+ \d+",s).group(0).split(" ")[-1]
# '13'

它有效,但可能有更好的解决方案。我曾尝试使用 lookbehind,但我遇到了 python 不允许 lookbehind 长度不足的问题(而且我不知道 code 之后的第一个数字中的位数)。我试过了

re.search("(?<=code \d+)\d+",s).group(0)
# raise error, v # invalid expression
# sre_constants.error: look-behind requires fixed-width pattern

最佳答案

你可以一起跳过re

>>> a = s.split()
>>> a[a.index('code') + 2]
'13'

关于python - 匹配给定模式后的第二个数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31305039/

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