Для этого вам понадобится библиотека для разбора естественного языка.
Например, вы можете использовать SharpNLP , который является портом C # проекта OpenNLP .
SharpNLP - это набор инструментов для обработки естественного языка, написанный на C #. В настоящее время он предоставляет следующие инструменты НЛП:
- разделитель предложений
- и т.д ...
Статья Статистический анализ английских предложений содержит некоторые подробности о том, как установить и использовать детектор предложений в SharpNLP. Пример кода из этой статьи повторяется ниже как тизер, но, пожалуйста, прочитайте документацию для более полного описания доступных функций и того, как их следует использовать.
using OpenNLP.Tools.SentenceDetect;
// ...
EnglishMaximumEntropySentenceDetector sentenceDetector =
new EnglishMaximumEntropySentenceDetector(mModelPath + "EnglishSD.nbin");
string[] sentences = sentenceDetector.SentenceDetect(input);
Если вы можете принять простое правило в отношении ваших предложений, например, что все они заканчиваются точкой, а точка не появляется нигде, кроме формы в конце предложения, тогда вы можете просто посчитать количество периодов в вашем предложении. текст. Однако обратите внимание, что текст на английском языке обычно не соответствует этому шаблону, потому что:
- Существуют и другие символы, которые могут заканчиваться предложением, кроме точки.
- Этот период имеет иное использование в английском языке, кроме конечных предложений.