Regex for Names Validation Allow Only Letters and Spaces

Java Regex to Validate Full Name allow only Spaces and Letters

What about:

  • Peter Müller
  • François Hollande
  • Patrick O'Brian
  • Silvana Koch-Mehrin

Validating names is a difficult issue, because valid names are not only consisting of the letters A-Z.

At least you should use the Unicode property for letters and add more special characters. A first approach could be e.g.:

String regx = "^[\\p{L} .'-]+$";

\\p{L} is a Unicode Character Property that matches any kind of letter from any language

Regex which allows alphabets and spaces combination but not only spaces

Make your expression require one alphabet and then the additional alphabets and spaces are optional:

/^[A-Za-z]|[A-Za-z][A-Za-z\s]*[A-Za-z]$/

Also that \s means any whitespace characters (tabs, newlines, carriage returns etc), not just space.

(edited: my earlier answer was flawed. This new one ensures input is either just one alphabet, or has to start and end with alphabet with spaces allowed only in between.



Related Topics



Leave a reply



Submit