Hi,
I've taken a look at your brief and the supplied dictionary file and it all looks quite achievable. I assume the words in the dictionary with asterisks on the end are wildcards, so any word in the input that matches on that from the start will match up to one of the categories?
Shouldn't be a problem to deliver this. Once I see the dictionary I can decide on the best approach, for best performance and memory usage, but I've done similar work in the past (processing input files into large searchable memory matching systems) so am familiar with the general approaches to use here.
I can deliver this for you in C#, with source code. All my code is structured in accordance with Microsofts design and styling guidelines, stylecopped and fully commented, so should be easy to read and maintain in the future, if needed.
I can turn this around for you in a couple of days, once the dictionary is provided. If you can give me an idea of the input .txt file size too, that would be great (are they typically very small, very large or could they be anything!).
Let me know if you'd like any clarification on my proposal,
Regards
Chris
PulseLab Ltd.