gpt4 book ai didi

python-3.x - 匹配字符串中同时出现的单词

转载 作者:行者123 更新时间:2023-12-02 08:01:39 24 4
gpt4 key购买 nike

我正在尝试匹配字符串中同时出现的单词,而不考虑它们出现的顺序。

我尝试过做一些非常基础的事情。它给了我预期的结果,但我必须匹配用户输入的任意数量的单词。

示例:用户想要匹配“great product”

str="great product. affordable useful cool."
if (str.find("great product")) != -1 or (str.find("product great")) != -1:
print(str)

给出预期的结果。现在,如果用户想检查字符串是否包含单词

"useful affordable cool"

只要它们一起出现,顺序不限。

str 有这些词,因此它必须匹配。

我该怎么做?我应该使用正则表达式吗?

如有任何帮助,我们将不胜感激。谢谢!

最佳答案

如果你想通过一个正则表达式来处理这个问题,你可以尝试使用这个模式:

^(?=.*\buseful\b)(?=.*\baffordable\b)(?=.*\bcool\b).*$

Python 脚本:

input = "great product. affordable useful cool."
match = re.match(r'^(?=.*\buseful\b)(?=.*\baffordable\b)(?=.*\bcool\b).*$', input)
if match:
print("MATCH")

上面的正则表达式模式使用了肯定的前瞻,每个前瞻都断言其中一个关键字出现在输入字符串中。例如:

(?=.*\buseful\b)

断言 useful 出现。三个前瞻的组合涵盖了所有三个关键字。

关于python-3.x - 匹配字符串中同时出现的单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56460540/

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