8

搜索字符串时是否有一种简单的方法来支持通配符(“*”) - 不使用 RegEx?

用户应该使用通配符输入搜索词,但不必处理 RegEx 的复杂性:

"foo*"   =>  str.startswith("foo")
"*foo"   =>  str.endswith("foo")
"*foo*"  =>  "foo" in str

(但是,当有多个搜索词时,它会变得更加复杂,例如“foo bar baz”)

这似乎是一个常见问题,所以我想知道是否有现成的解决方案。

任何帮助将不胜感激!

4

1 回答 1

14

你可以试试这个fnmatch模块,它有一个类似于 shell 的通配符语法。

于 2008-10-26T20:54:30.107 回答