關於如何計算C#中的單詞頻率,有一些很好的例子,但沒有一個是全面的,我真的需要一個在VB.NET中。在VB.NET中計算詞頻的最佳方法是什麼?
我目前的做法是每個頻率計數限制爲一個字。什麼是最好的方式來改變這一點,以便我可以得到一個完全準確的詞頻列表?
wordFreq = New Hashtable()
Dim words As String() = Regex.Split(inputText, "(\W)")
For i As Integer = 0 To words.Length - 1
If words(i) <> "" Then
Dim realWord As Boolean = True
For j As Integer = 0 To words(i).Length - 1
If Char.IsLetter(words(i).Chars(j)) = False Then
realWord = False
End If
Next j
If realWord = True Then
If wordFreq.Contains(words(i).ToLower()) Then
wordFreq(words(i).ToLower()) += 1
Else
wordFreq.Add(words(i).ToLower, 1)
End If
End If
End If
Next
Me.wordCount = New SortedList
For Each de As DictionaryEntry In wordFreq
If wordCount.ContainsKey(de.Value) = False Then
wordCount.Add(de.Value, de.Key)
End If
Next
我更喜歡一個實際的代碼片段,但通用的'噢是啊...使用這個和運行'將工作以及。
我已經看了看說 - 一切無論是使用LINQ或不在.NET – ine 2008-10-22 05:01:32