private int parseSentences(Paragraph para, String text, int index)
{
int ii;
for (ii = index; ii < text.Length; )
{
if (isParagraphTerminator(text[ii]))
{
break;
}
ii = skipWhiteSpaces(text, ii);
int start = ii;
ii = skipSentenceAndParaTerminators(text, start);
if (ii > start)
{
var sentence = new Sentence(para) { Start = start, Length = ii - start };
if (sentence.Length > 0 &&
sentence.IsValid(textBox1.Text.Substring(sentence.Start, sentence.Length)))
{
para.Sentences.Add(sentence);
}
}
ii = skipSentenceTerminators(text, ii);
}
while (true)
{
int sentenceNum = resolveAbbreviations(para, text);
if (sentenceNum < 0)
{
break;
}
Sentence s = para.Sentences[sentenceNum + 1];
para.Sentences[sentenceNum].Length += s.Length + (s.Start - para.Sentences[sentenceNum].End);
para.Sentences.Remove(s);
}
return ii;
}