NLP stands for Natural Programming Language. NLP belongs to one of the branch of Artificial Intelligence. It is used to build a system which understand, manipulate and respond to human in his natural language. NLP is being used in many areas like Google translation, auto suggest in grammatical mistakes etc.
If you are using Python, there is a very powerful library used to build such a system that is NLTK (Natural Language Toolkit).
NLTK: This toolkit is one of the very powerful library which contains many packages which are used to build a system to understand and respond human queries. Tokenization, Stemming, Lemmatization, Punctuation, Character count, word count etc. are some packages which belongs to this toolkit and used in NLP.