Sentence parseSentence(final String text,final ConversationContext ctx){
  if (isEmpty()) {
    return ConversationParser.parse(text,ctx);
  }
  String txt=text.trim();
  final Sentence sentence=new SentenceImplementation(ctx,txt);
  txt=ConversationParser.detectSentenceType(txt,sentence);
  if (typeMatching) {
    readTypeMatchExpressions(txt,ctx,sentence);
  }
 else   if (exactMatching) {
    readSimpleExpressions(txt,ctx,sentence);
  }
 else   if (similarMatching) {
    readSimpleExpressions(txt,ctx,sentence);
  }
 else   if (jokerMatching) {
    readJokerExpressions(txt,ctx,sentence);
  }
 else   if (caseInsensitive) {
    readSimpleExpressions(txt,ctx,sentence);
  }
  return sentence;
}

Sentence parseSentence ( final String text , final ConversationContext ctx ) { if ( isEmpty ( ) ) { return ConversationParser . parse ( text , ctx ) ; } String txt = text . trim ( ) ; final Sentence sentence = new SentenceImplementation ( ctx , txt ) ; txt = ConversationParser . detectSentenceType ( txt , sentence ) ; if ( typeMatching ) { readTypeMatchExpressions ( txt , ctx , sentence ) ; } else if ( exactMatching ) { readSimpleExpressions ( txt , ctx , sentence ) ; } else if ( similarMatching ) { readSimpleExpressions ( txt , ctx , sentence ) ; } else if ( jokerMatching ) { readJokerExpressions ( txt , ctx , sentence ) ; } else if ( caseInsensitive ) { readSimpleExpressions ( txt , ctx , sentence ) ; } return sentence ; }
parse the given text string and create a sentence object using the current matching flags .
