如何在 Python 中的字符串中插入通配符?

How to stick a wildcard in a string in Python?

我想创建一个简单的聊天机器人类型的程序。在尝试使用 AIML 并发现它不足之后,我决定看看 Python 是否有工作的机会。我希望能够像

这样的句子

"What color is the sky?"

并以可理解的答案回应。所以,我想在 if/else 语句中使用通配符以在 python 中快速完成。可能是这样的:

statement = input()
if statement == "_ color _ sky":
    print(SKY_COLOR)

如果您知道一个库(希望内置:-])有一个工具或什至只是一点转义字符类型技巧,我们将不胜感激。

正则表达式匹配似乎是你想要的

>>> import re
>>> re.search(".*color.*sky.*", "where am I?") == None
True
>>> re.search(".*color.*sky.*", "what color is the sky") == None
False
>>> re.search(".*color.*sky.*", "what color is a rose") == None
True

如果模式不匹配,它给出 None。