特定の文字列が正しいスペルの英語の単語であるかどうかを確認する簡単な方法を探しています。たとえば、「looked」はTrueを返し、「hurrr」はFalseを返します。スペル候補やスペル修正機能は必要ありません。文字列を取り、ブール値を返す単純な関数です。
それを行う2つの可能な方法:
PyEnchantは現在積極的にメンテナンスされていません。
私は同じ機能を探していましたが、Windowsで動作する64ビットの既存のライブラリを見つけるのに苦労しました。 PyEnchantは優れたライブラリですが、現在アクティブではなく、64ビットでは機能しません。私が見つけた他のライブラリは、Windowsでは機能しませんでした。
私はついに、他の人が価値があると思う解決策を見つけました。
ソリューション...
in
キーワードを使用して、文字列がセットに含まれているかどうかを確認しますfrom nltk.corpus import brown
Word_list = brown.words()
Word_set = set(Word_list)
# Check if Word is in set
"looked" in Word_set # Returns True
"hurrr" in Word_set # Returns False
タイマーチェックを使用すると、セットを検索するのに実質的に時間がかからないことがわかります。 1,000語のテストには0.004秒かかりました。
私は個人的に使用しました: http://textblob.readthedocs.io/en/dev/ これはアクティブなプロジェクトであり、ウェブサイトによれば:
スペル修正は、パターンライブラリに実装されている、Peter Norvigの「How to Write a Spelling Corrector」[1]に基づいています。約70%正確です
Yahooは、YQLを介してスペルチェック [〜#〜] api [〜#〜] を提供しています。
非常にシンプルで、非営利目的で5000クエリ/ IPアドレス/日を取得できます(無料)