public ContainsWord ( string word ) : bool | ||
word | string | |
Результат | bool |
public IEnumerable <string> CutForSearch(string text, bool hmm = true) { var result = new List <string>(); var words = Cut(text, hmm: hmm); foreach (var w in words) { if (w.Length > 2) { result.AddRange(Enumerable.Range(0, w.Length - 1).Select(i => w.Substring(i, 2)).Where(gram2 => WordDict.ContainsWord(gram2))); } if (w.Length > 3) { result.AddRange(Enumerable.Range(0, w.Length - 2).Select(i => w.Substring(i, 3)).Where(gram3 => WordDict.ContainsWord(gram3))); } result.Add(w); } return(result); }
public IEnumerable <string> CutForSearch(string text, bool hmm = true) { var result = new List <string>(); var words = Cut(text, hmm: hmm); foreach (var w in words) { if (w.Length > 2) { foreach (var i in Enumerable.Range(0, w.Length - 1)) { var gram2 = w.Substring(i, 2); if (WordDict.ContainsWord(gram2)) { result.Add(gram2); } } } if (w.Length > 3) { foreach (var i in Enumerable.Range(0, w.Length - 2)) { var gram3 = w.Substring(i, 3); if (WordDict.ContainsWord(gram3)) { result.Add(gram3); } } } result.Add(w); } return(result); }