2014-03-13 3 views
0

Регулярное выражение не умеет читать полную строку, работает только с одним символом.Регулярное выражение в JavaScript не работает

var abc = "ab"; 
var patter = /^([a-z0-9A-Z])$/; 

if (patter.test(abc)) { 
    console.log('yes'); 
} else { 
    console.log('no'); 
} 
+0

Ваше регулярное выражение соответствует только одному символу, вам нужно использовать квантификатор, см. Здесь http://www.regular-expressions.info/refrepeat.html – elclanrs

ответ

2

Вы должны установить квантификатор, если вам не нужен только один символ.

Добавить * для соответствия нулевому или большему символу (или +, если вы хотите быть уверены в том, что есть хотя бы один символ);

var patter = /^[a-z0-9A-Z]*$/; 

Обратите внимание, что я удалил скобки: они бесполезны с методом test.

Смежные вопросы