gpt4 book ai didi

python - 使用正则表达式捕获方括号内的文本

转载 作者:行者123 更新时间:2023-11-28 21:54:24 24 4
gpt4 key购买 nike

我在这里看到问题: Regex to capture {}这与我想要的类似,但我无法让它工作。

我的数据是:

[Honda] Japanese manufacturer [VTEC] Name of electronic lift control

我希望输出是

[Honda], [VTEC]

我的表达是:

m = re.match('(\[[^\[\]]*\])', '[Honda] Japanese manufacturer [VTEC] Name of electronic lift control')

我希望:

  • m.group(0) 输出[Honda]
  • m.group(1) 输出[VTEC]

但是两者都输出[Honda]。如何访问第二场比赛?

最佳答案

你的表达式中只有一个组,所以你只能得到那个组。第 1 组是捕获组,第 0 组是整个匹配文本;在你的表达中,它们是一回事。如果您省略了 (...) 括号,您将只有一个组 0。

如果你想获得所有匹配,使用re.findall() .这将返回匹配组列表(或组 0,如果表达式中没有捕获组):

>>> import re
>>> re.findall('\[[^\[\]]*\]', '[Honda] Japanese manufacturer [VTEC] Name of electronic lift control')
['[Honda]', '[VTEC]']

关于python - 使用正则表达式捕获方括号内的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24330609/

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