Solution 1 provides right idea. Besides, you may want to do a different thing: instead of validation, you could filter out unwanted character while they are entered. In a Web application, this is done in JavaScript. Just one detail, often forgotten, don't forget to allow "character" #8, backspace.
As to Regex, your problem is one of the basic, so you better need to learn Regex. You can develop and learn Regular Expressions very effectively if you use Expresso:
http://www.ultrapico.com/Expresso.htm[
^].
See also:
http://en.wikipedia.org/wiki/Regular_expression[
^],
http://msdn.microsoft.com/en-us/library/system.text.regularexpressions.regex.aspx[
^].
—SA