/** * <summary> The method checks for the MONEY entities using regular expressions. After that, if the expression is a MONEY * expression, it also assigns the previous text, which may included numbers or some monetarial texts, MONEY tag.</summary> * <param name="sentence">The sentence for which MONEY named entities checked.</param> */ protected override void AutoDetectMoney(AnnotatedSentence.AnnotatedSentence sentence) { for (var i = 0; i < sentence.WordCount(); i++) { var word = (AnnotatedWord)sentence.GetWord(i); var wordLowercase = word.GetName().ToLower(new CultureInfo("tr")); if (word.GetParse() != null) { if (Word.IsMoney(wordLowercase)) { word.SetNamedEntityType("MONEY"); var j = i - 1; while (j >= 0) { AnnotatedWord previous = (AnnotatedWord)sentence.GetWord(j); if (previous.GetParse() != null && (previous.GetName().Equals("amerikan") || previous.GetParse() .ContainsTag(MorphologicalTag.REAL) || previous.GetParse() .ContainsTag(MorphologicalTag.CARDINAL) || previous.GetParse() .ContainsTag(MorphologicalTag.NUMBER))) { previous.SetNamedEntityType("MONEY"); } else { break; } j--; } } } } }
public string GetWordName() { return(_annotatedWord.GetName()); }