Pythonでユーザー定義の検索文字列でワ​​イルドカードをサポートするにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/238600

質問

RegExを使用せずに、文字列を検索するときにワイルドカード(" *")をサポートする簡単な方法はありますか?

ユーザーはワイルドカードを使用して検索語を入力することになっていますが、RegExの複雑さに対処する必要はありません。

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

(ただし、" foo bar baz"のように複数の検索語がある場合はより複雑になります)

これはよくある問題のように思えるので、そのための既成の解決策があるのだろうか。

ご協力いただければ幸いです!

役に立ちましたか?

解決

fnmatch を試すことができます。 モジュールには、シェルのようなワイルドカード構文があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top