[regex] What is the regular expression to allow uppercase/lowercase (alphabetical characters), periods, spaces and dashes only?

I am having problems creating a regex validator that checks to make sure the input has uppercase or lowercase alphabetical characters, spaces, periods, underscores, and dashes only. Couldn't find this example online via searches. For example:

These are ok:

Dr. Marshall
sam smith
.george con-stanza .great
peter.
josh_stinson
smith _.gorne

Anything containing other characters is not okay. That is numbers, or any other symbols.

This question is related to regex

The answer is


Check out the basics of regular expressions in a tutorial. All it requires is two anchors and a repeated character class:

^[a-zA-Z ._-]*$

If you use the case-insensitive modifier, you can shorten this to

^[a-z ._-]*$

Note that the space is significant (it is just a character like any other).