Python의 사용자 정의 검색 문자열에서 와일드 카드를 어떻게 지원할 수 있습니까?

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

문제

REGEX를 사용하지 않고 문자열을 검색 할 때 와일드 카드 ( "*")를 지원하는 간단한 방법이 있습니까?

사용자는 와일드 카드를 사용하여 검색어를 입력해야하지만 Regex의 복잡성을 처리 할 필요는 없습니다.

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

(그래도 여러 개의 검색어가있을 때 더 복잡해집니다. 예 : "foo술집BAZ ")

이것은 일반적인 문제처럼 보이므로 기성품 솔루션이 있는지 궁금합니다.

모든 도움이 크게 감사드립니다!

도움이 되었습니까?

해결책

당신은 시도 할 수 있습니다 fnmatch 모듈에는 쉘 같은 와일드 카드 구문이 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top