Мне нужно получить первые 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])
Но он удалит разделители из результата. Я открыт для регулярного выражения или базовых манипуляций с строкой.
Как вы относитесь к: _For, например, It's 5 A.M. утром здесь и моей C.D. не работает очень хорошо и т. д. и т. д .; ты в порядке. с этим?_? – Ben
@Ben да, есть «особые случаи», и результат является приемлемым. Он не должен быть полностью совершенным. – flowfree