Regex searchable word list for space-less monoalphabetic substitution I am working on teaching myself basic cryptography. In the process I created a simple substitution cipher based on a single alphabet, and a statically defined offset (no key for now). Now that everything is working, I want to start on another application to "crack" the offset. The key here is my cipher removes all spaces, so I can't judge the length of the individual words. 

To solve this issue I would like to use regular expressions. I would then take parts of the (possibly) deciphered message and query a word list to determine where the words start and end.

Is this a good way to do this?

I know there are only 26 possibilities for the offset in my simple cipher. However, I would like to find the answer programmatically.
The simple shift sounds like a Ceasar Cipher.

The simplest crack for this is probably frequency analysis. The most common letter in the English language is E. Count your letters, and guess your shift based on that. 

If you want to make it better, you could get the X most common letters in your cipher, calculate what you think the shift is, and compare that to known letter frequencies in English, like ETAOIN SHDRLU. The frequency guess that differs the least (with the lowest edit distance) is probably your candidate. 

You can also judge how good the resulting text is by using bigram and trigram frequency tests.

You may also find some of the methods described in these books helpful:
http://www.nsa.gov/public_info/declass/military_cryptanalysis.shtml

UPDATE: It sounds like what you're actually trying to do is detect when you've decoded your ciphertext. You don't necessarily need to match the words in a dictionary to do that. 

The above mentioned methods should work quite well, especially if you start using bigram and trigram frequency.

If you get to the point where you need a more sophisticated method to detect when your text is decrypted, I suggest asking on Stack Overflow, and also telling them what your current approach is, and why it's not working for you.

Note that regular expressions are not useful for what you have in mind. A Markov chain would be a much better tool, especially since it can be used to predict where a word has ended and a new word has started.