For natural language processing, a traditional fit is Prolog.
The book Prolog Programming in Depth has a single chapter devoted to using Prolog for NLP. According to this book, Prolog is a nice fit for NLP because of it's built-in knowledge representation system and unification mechanism.
According to Wikipedia (http://en.wikipedia.org/wiki/Prolog), :
While initially aimed at natural language processing, the language has since then stretched far into other areas
Prolog was initially developed to solve such problems.
As for data-mining the answer can depend on the format of the data. Web-pages, databases, text ? If you are data-mining information on text files, I would stay away from Prolog and use a general language you are comfortable with. C#, Python, etc. could do the job.
Data mining, text analytics, natural language processing...there're a lot of names for it.
The definition of NLP, which is according to Wikipedia:
Natural language processing (NLP) is a field of computer science and linguistics concerned with the interactions between computers and human (natural) languages; it began as a branch of artificial intelligence.
or by Prolog Programming in Depth:
Natural language processing (NLP) is the study of how to make computers understand human languages such as English and French.
While that has some common grounds with data mining, they are still two things very much apart in goal and in practice.