6

How do I check that?

I want to allow all A-Za-z0-9 , and underscore. Any other symbol, the function should return false.

Tikhon Jelvis
  • 66,376
  • 17
  • 173
  • 213
TIMEX
  • 238,746
  • 336
  • 750
  • 1,061

2 Answers2

16

You can use a regular expression:

function isValid(str) { return /^\w+$/.test(str); }

\w is a character class that represents exactly what you want: [A-Za-z0-9_]. If you want the empty string to return true, change the + to a *.

To help you remember it, the \w is a word character. (It turns out that words have underscores in JavaScript land.)

Tikhon Jelvis
  • 66,376
  • 17
  • 173
  • 213
1

I think this is a solution:

function check(input) {
  return /^\w+$/i.test(input);
}
ioseb
  • 16,193
  • 3
  • 31
  • 28