How to find out wether a word exists in english using nltk

前端 未结 3 2054
我寻月下人不归
我寻月下人不归 2021-01-02 13:33

I am looking for a proper solution to this question. This question has been asked many times before and i didnt find a single answer that suited. I need to use a corpus in N

3条回答
  •  悲哀的现实
    2021-01-02 14:08

    NLTK includes some corpora that are nothing more than wordlists. The Words Corpus is the /usr/share/dict/words file from Unix, used by some spell checkers. We can use it to find unusual or mis-spelt words in a text corpus, as shown in :

    def unusual_words(text):
        text_vocab = set(w.lower() for w in text.split() if w.isalpha())
        english_vocab = set(w.lower() for w in nltk.corpus.words.words())
        unusual = text_vocab - english_vocab
        return sorted(unusual)
    

    And in this case you can check the member ship of your word with english_vocab.

    >>> import nltk
    >>> english_vocab = set(w.lower() for w in nltk.corpus.words.words())
    >>> 'a' in english_vocab
    True
    >>> 'this' in english_vocab
    True
    >>> 'nothing' in english_vocab
    True
    >>> 'nothingg' in english_vocab
    False
    >>> 'corpus' in english_vocab
    True
    >>> 'Terminology'.lower() in english_vocab
    True
    >>> 'sorted' in english_vocab
    True
    

提交回复
热议问题