Regex to validate string having only characters (not special characters), blank spaces and numbers Regex to validate string having only characters (not special characters), blank spaces and numbers ruby ruby

Regex to validate string having only characters (not special characters), blank spaces and numbers


There are a couple ways of doing this. If you only want to allow ASCII word characters (no accented characters like Ê or letters from other alphabets like Ӕ or ל), use this:

/^[a-zA-Z\d\s]*$/

If you want to allow only numbers and letters from other languages for Ruby 1.8.7, use this:

/^(?:[^\W_]|\s)*$/u

If you want to allow only numbers and letters from other languages for Ruby 1.9.x, use this:

^[\p{Word}\w\s-]*$

Also, if you are planning to use 1.9.x regex with unicode support in Ruby on Rails, add this line at the beginning of your .rb file:

# coding: utf-8


You're looking for:

[a-zA-Z0-9\s]+

The + says one or more so it'll not match empty string. If you need to match them as well, use * in place of +.


In addition to what have been said, assign any of the regular expresion to your regex variable in your control this, for instance

regex = ^[a-zA-Z\d\s]*$