gpt4 book ai didi

Python 正则表达式搜索

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

我试图用关键字“汽车”搜索所有这些短语:

例如text = 'alice: speed car, my red car, new car', 我想找 'speed car', 'my red car', 'new car'。

import re
text = 'alice: speed car, my red car, new car'
regex = r'([a-zA-Z]+\s)+car'
match = re.findall(regex, text)
if match:
print(match)

但上面的代码产生:

["speed ", "red ", "new "]

代替

["speed car", "my red car", "new car"]

哪个是预期的?

最佳答案

问题是您没有在正则表达式中捕获 'car',将整个正则表达式放在 () 中并使用 ?: 使内部正则表达式成为非捕获组。

>>> regex = r'((?:[a-zA-Z]+\s)+car)'
>>> text = 'alice: speed car, my red car, new car'
>>> re.findall(regex, text)
['speed car', 'my red car', 'new car']

关于Python 正则表达式搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18225278/

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