Любая строка в Javascript имеет функцию match()
, которая принимает регулярное выражение и возвращает null
, если она не совпадает.
Например, если у вас есть:
var s = "Hello I'm 301";
Вы можете проверить это с помощью:
if (s.match(/^[a-z0-9\s]*$/i))
alert("string is ok!");
else
alert("string is bad!");
На регулярное выражение: /^[a-z0-9\s]*$/i
Каретка (^
) в начале и доллар ($
) в конце являются якорями. Они означают «начало строки» и «конец строки».
Они заставляют регулярное выражение покрывать всю строку, а не только ее части. Квадратные скобки определяют диапазон символов: буквы и цифры, а также пробел.
Без каретки и доллара (якорей) ваше регулярное выражение соответствовало бы любому действительному символу и вернуло бы значение true.
Последний "i"
является параметром регулярного выражения, что означает «без учета регистра».
Надеюсь, это поможет!