private void ReadCurrentPageConcordance(StreamReader file) { StringBuilder currentPage = new StringBuilder(); for (int i = 0; i < LinesInPage; i++) { currentPage.Append(file.ReadLine() + " "); if (file.EndOfStream) { break; } } PageConcordance.Clear(); foreach (Match m in new Regex(@"\w+").Matches(currentPage.ToString())) { PageConcordance.Add(new Element() { Word = m.Value.ToLower(), ThePageFrequency = 1 }); } if (PageConcordance.Count > 0) { PageNum++; UnitePageConcordanceDuplicates(); SortPageConcordance(); } }
private void ReadCurrentPageConcordance(StreamReader file) { StringBuilder currentPage = new StringBuilder(); for (int i = 0; i < LinesInPage; i++) { currentPage.Append(file.ReadLine() + " "); if (file.EndOfStream) { break; } } PageConcordance.Clear(); foreach (Word w in new Sentence(currentPage.ToString()).Words) { if (!w.ToStringWithoutPunctuators().Equals("")) { PageConcordance.Add(new Element() { Word = w.ToStringWithoutPunctuators().ToLower(), ThePageFrequency = 1 }); } } if (PageConcordance.Count > 0) { PageNum++; UnitePageConcordanceDuplicates(); SortPageConcordance(); } }
private void UnitePageConcordanceDuplicates() { for (int i = 0; i < PageConcordance.Count; i++) { for (int j = i + 1; j < PageConcordance.Count; j++) { if (PageConcordance[i].Word.Equals(PageConcordance[j].Word)) { PageConcordance[i].ThePageFrequency++; PageConcordance.RemoveAt(j); j--; } } } }
private void SortPageConcordance() { PageConcordance.Sort((e1, e2) => e1.Word.CompareTo(e2.Word)); }