Well, first of all, i think you'll need a reference, like a word database or something. There are a lot of those things around in open source dictionaires. You'll then need to filter from that database the words that contains characteres from the string you provided. For example, you pick in the word "more". It contains the letters 'm', 'o', 'r' and 'e'. You'll pick up your string and find if it contais those letters. If it has, it can go for the result pool. Hope it helps, Nuno