A coding challenge.
An anagram is a type of word play, the result of rearranging the letters of a word or phrase to produce a new word or phrase, using all the original letters exactly once; for example, the word anagram can be rearranged into nag-a-ram.
- William Shakespeare = I am a weakish speller
- Helmuth Elsner = me run the shell
- Computer = mute proc = CPU metro
- Visual Studio = loud USA visit
- Wareneingang = gain new range = earn gang wine = eager wanning = aging earn new
Given a file containing one word per line and a search phrase, print out all the combinations of words that are anagrams of the search phrase.
- Letter case does not matter.
- Special characters should be ignored.
- Ignore short dictionary words (those having only one or two letters).