Разделение текста на предложения

Сегодня понадобилось из одного куска текста сделать что-то вроде анонса. Понятно, что анонс — это некая часть текста. У меня это было 300 символов. Но просто обрезать и поставить многоточие не хорошо. Кто знает, что находится в позиции трехсот символов от начала строки. Поэтому необходимо было обрезать текст в конце предложения после 300 символов.

Для этого хорошо подошла регулярка /[.?!]\s+(?=[А-Я])/m.

В данном выражении используется так называемое lookahead-условие или lookbehind-условие (?=[А-Я]).