문장의 마지막 문자가 마침표, 콜론 또는 세미콜론이 될 수있는 텍스트에서 첫 번째 N 문장을 가져와야합니다. 예를 들어,이 텍스트 제공 :텍스트에서 첫 번째 N 문장을 얻는 방법은 무엇입니까?
Lorem ipsum, dolor sit amet. consectetur adipisicing elit; sed do eiusmod tempor.
incididunt ut labore: et dolore magna aliqua. Ut enim ad. minim veniam.
처음 4 개 문장 것을
Lorem ipsum, dolor sit amet. consectetur adipisicing elit; sed do eiusmod tempor.
incididunt ut labore:
현재, 내 코드는 구분 기호로 .
, :
및 ;
를 사용하여 문자열을 분할 된 후 가입 결과.
import re
sentences = re.split('\. |: |;', text)
summary = ' '.join(sentences[:4])
그러나 결과에서 구분 기호가 제거됩니다. 나는 정규식이나 기본 문자열 조작에 개방적이다. (다시 가입하고 구분 기호를 유지 피하기 위해) itertools.islice
와
>>> re.match(r'(?:[^.:;]+[.:;]){4}', text).group()
'Lorem ipsum, dolor sit amet. consectetur adipisicing elit; sed do eiusmod tempor. incididunt ut labore:'
어떻게 처리할까요? 예를 들어, 오전 5시입니다. 아침에 여기와 내 C.D. 아주 잘 작동하지 않습니다 등 등; 너 니? 이걸로? _? – Ben
@ 벤 예, "특별한 경우"가 있으며 그 결과는 인정됩니다. 완전히 완벽 할 필요는 없습니다. – flowfree