문제: 제공된 텍스트 파일에서 문장의 복잡성을 고려하여 문장 목록을 얻습니다. 약어에 사용되는 마침표와 같은 언어
비효율적인 정규식:
re.compile('(\. |^|!|\?)([A-Z][^;↑\.<>@\^&/\[\]]*(\.|!|\?) )',re.M)
NLTK(Natural Language Toolkit)를 사용한 솔루션:
NLTK는 다음을 제공합니다. 다음과 같이 문장 토큰화를 위한 강력한 솔루션입니다. 코드:
import nltk.data # Load the English sentence tokenizer tokenizer = nltk.data.load('tokenizers/punkt/english.pickle') # Read the text file with open("test.txt") as fp: data = fp.read() # Tokenize the text into sentences sentences = tokenizer.tokenize(data) # Print the tokenized sentences, separated by newlines print('\n-----\n'.join(sentences))
NLTK 솔루션의 이점:
위 내용은 NLTK는 복잡한 언어적 뉘앙스를 처리하면서 어떻게 텍스트에서 문장을 효율적으로 추출할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!