2015-09-24 2 views
1

Я пытаюсь вернуть свое регулярное выражение для правильной подстроки текста абзаца. Я решил, что лучшее, что нужно сделать, - это притянуть любое предложение, которое происходит между двумя периодами, и которое начинается только с прописной буквы (без цифр или знаков препинания).JavaScript regex, начинать предложение на заглавную букву только между периодами

То, что я до сих пор возвращает любое другое предложение между двумя периодами (не последовательные предложения), а также не могу понять, как взять предложение, которое начинается только с прописной буквы.

Вот выражение:

var bodyStr = result.body; 
var truncatedStr = bodyStr.match(/[^\.!\?]+[\.!\?]+/g); 

Я использую regex101, чтобы попытаться сделать вторую часть этой работы (вытягивать предложения, которые начинаются с капиталом, не-числом, не являющиеся символы пунктуации), и он рвется:

https://regex101.com/r/rJ8sC5/1

Может кто-нибудь помочь?

ответ

3

Просто добавьте заглавную букву в своем регулярном выражении:

/[A-Z][^\.!\?]*[\.!\?]+/g 
+0

КСТАТИ. это охватывает только заглавные буквы ascii. –

+0

отлично, спасибо! – amoeboar

Смежные вопросы