Python でこれを行う方法の例を次に示します。概念はどの言語でも似ています。
>>> import urllib2, string
>>> devilsdict = urllib2.urlopen('http://www.gutenberg.org/files/972/972.txt').read()
>>> workinglist = devilsdict.split()
>>> cleanlist = [item.strip(string.punctuation) for item in workinglist]
>>> results = {}
>>> skip = {'a':'', 'the':'', 'an':''}
>>> for item in cleanlist:
if item not in skip:
try:
results[item] += 1
except KeyError:
results[item] = 1
>>> results
{'': 17, 'writings': 3, 'foul': 1, 'Sugar': 1, 'four': 8, 'Does': 1, "friend's": 1, 'hanging': 4, 'Until': 1, 'marching': 2 ...
最初の行は、問題の一部に役立つライブラリを取得するだけです。2 行目では、urllib2 が Ambrose Bierce の「Devil's Dictionary」のコピーをダウンロードします。次の行では、テキスト内のすべての単語のリストを句読点なしで作成します。次に、ハッシュ テーブルを作成します。これは、この場合、数値に関連付けられた一意の単語のリストのようなものです。for ループは、Bierce ブック内の各単語を調べます。テーブルにその単語のレコードが既に存在する場合、新しい出現ごとに、テーブル内のその単語に関連付けられた値に 1 が追加されます。単語がまだ表示されていない場合は、値が 1 (1 回出現することを意味します) でテーブルに追加されます。あなたが話しているケースでは、大文字の使用など、詳細にもっと注意を払う必要があります。文の途中でのみ固有名詞を識別するのを助けるために、
ステミングと複数形化、実験、サードパーティの作業を調べるために、学術的なオープン ソース プロジェクトである NLTK の一部を Python で楽しんでいます。