private void parse()
{
_paragraphs = new List<Paragraph>();
_sentences = new List<Sentence>();
if (String.IsNullOrEmpty(textBox1.Text.Trim()))
{
return;
}
var text = textBox1.Text;
for (int ii = 0; ii < text.Length; )
{
ii = gotoNextPara(text, ii);
if (isEnd(text, ii))
{
break;
}
var para = new Paragraph { Start = ii };
ii = parseSentences(para, text, ii);
if (para.Sentences.Any())
{
var lastSentence = para.Sentences[para.Sentences.Count() - 1];
int lastSentenceEndOffset = lastSentence.Start + lastSentence.Length;
para.Length = lastSentenceEndOffset - para.Start;
_paragraphs.Add(para);
}
}
_sentences = new List<Sentence>();
foreach (Paragraph para in _paragraphs)
{
foreach (Sentence sentence in para.Sentences)
{
_sentences.Add(sentence);
}
}
}