№ Нет. Простой трюк. Чтобы сделать это правильно, вам нужно выполнить синтаксический анализ текста. Никто не может этого сделать. По крайней мере, пока. По крайней мере, не в 100% случаев. Главным образом потому, что он также влечет за собой семантический анализ текста. Видите ли, вопреки тому, что тип лингвистов, который учил вас грамматике в школе, считает, что то, что составляет предложение, довольно сложно подытожить в наборе правил, которым компьютер мог следовать, не понимая текст.
Проведите следующие несколько лет, изучая вычислительную лингвистику. Может быть, к тому моменту будет ярлык?
Но вы можете подобраться.
Возможно, я попытался бы найти первый период, знак вопроса или восклицательный знак, за которым следует пробел.
/^(.*?)[.?!]\s/
((.*?)
является нежадным регулярное выражение, чтобы убедиться, что вы на самом деле найти только первое предложение.
Это регулярное выражение терпит неудачу, если в предложении содержится акроним, такой как среднее предложение от U.S.A. :) – pauldoo
@pauldoo, вы правы. Я только защищал (с '\ s') от первых двух символов пунктуации :( –