Если ваша входная строка не предложение, а много предложений, это становится очень сложной проблемой.
Регулярные выражения окажутся неоценимым инструментом, но (1) вам придется их хорошо знать, чтобы быть эффективными, и (2) они могут не справиться с работой самостоятельно.
Считайте это предложение
«Кто на первом месте», - ответил мистер Смит, который не смеялся.
Это предложение начинается не с буквы, оно состоит из цифры, различных знаков препинания, собственного имени и .
в середине.
Сложности огромны, и это одно предложение.
Одна из самых важных вещей при использовании RegEx - это «знать свои данные». Если вы знаете широту типов предложений, с которыми вы будете иметь дело, ваша задача будет более управляемой.
В любом случае вам придется играть со своей реализацией, пока вы не будете удовлетворены своими результатами. Я предлагаю написать несколько автоматических тестов с некоторыми примерами ввода - когда вы работаете над своей реализацией, вы можете регулярно запускать тесты, чтобы увидеть, где вы приближаетесь и где еще не достигли цели.