logo

Python의 와일드카드

와일드카드는 하나 이상의 문자 대신 또는 추가로 사용할 수 있는 기호입니다. 컴퓨터 프로그램, 언어, 운영 체제를 포함한 검색 엔진에서 와일드카드는 검색 기준을 압축하는 데 사용됩니다. 물음표(?)와 별표()는 가장 널리 사용되는 와일드카드입니다.

와일드카드 유형

별표(*)

별표(*) 또는 문자를 사용하여 원하는 수의 문자를 지정할 수 있습니다. 별표 *는 일반적으로 어근 단어의 결론에 사용되며 가능한 다양한 어미를 가진 어근 단어를 찾아야 할 때 사용됩니다.

예를 들어 '게임'이라는 단어를 사용하면 '게이머'와 '게임'이라는 문구가 모든 검색결과에 표시됩니다. 검색 매개변수 및 기타 단어에 따라 이 두 단어 외에 추가 단어가 있을 수 있습니다.

물음표(?)

물음표인가, 아니면 캐릭터인가? 하나를 나타냅니다. 루트 단어의 모든 문자를 함께 사용할 수 있습니다. 단어에 다른 철자가 여러 개 포함되어 있는 경우 물음표 연산자를 사용하면 프로세스 속도가 빨라집니다.

물음표 와일드카드 대신 점 또는. 문자는 단일 문자 표현에 활용됩니다.

예를 들어 '명예'라는 단어를 생각해 보세요. 이 문맥에서는 명예를 생략하면서 결과를 명예로 표시합니다.

Python의 와일드카드 검색

Python에서 와일드카드 검색을 사용하려면 re 라이브러리가 프로그램에 포함되어야 합니다. Python에서 정규 표현식을 사용하는 데 사용되는 라이브러리를 re 라이브러리라고 하며 이는 정규 표현식이라는 용어의 약어입니다.

검색을 수행하기 위해 단어 목록을 컴파일한 다음 re 라이브러리 기능을 사용합니다. 와일드카드를 사용하면 올바른 단어와 일치하는 단어를 찾을 수 있습니다.

다음 Python 코드는 와일드카드 검색을 수행합니다.

 import re str = re.compile('hel.o') a = ['hello', 'welcome', 'to', 'java', 'point'] match_is = [string for string in a if re.match_is(str, string)] print(match_is) 

산출:

 ['hello'] 

구현:

regex(정규식) 모듈을 사용하면 Python에서 와일드카드를 구현할 수 있습니다.

점. 물음표가 문자 ?로 대체되었습니다.

 import re # To change the outcomes, add or remove terms from this list. words = ['color', 'colour', 'work', 'working', 'apple', 'master', 'driving'] for word in words: # Instead of the? symbol, use the . symbol if re.search('col.r', word) : print (word) 

산출:

 color 

별표(*) 기호가 사용되는 방식과 마찬가지로.+ 문자는 하나 이상의 문자를 일치시키는 데 사용됩니다. 따라서 Python에서 정규식 코드는 루트 'work'로 시작하는 모든 단어를 찾기 위해 다음과 같이 보일 수 있습니다.

 import re # To change the outcomes, add or remove terms from this list. words = ['car', 'apple', 'work', 'working', 'goat', 'worker'] for word in words: # Instead of using the * symbol, use the.+ symbol. if re.search('work.+', word) : print (word) 

산출:

 working worker