Регулярное выражение не получается
Понадобилось сделать проверку, соответсвует ли строка неоходимому критерию.
Требуется найти: Содержит ли строка 20 цифр ИЛИ 10 латинских символов вместе с цифрами? Вот к чему привели мои мучения: /([^A-z0-9]){1,10}|([0-9]){1,20}$/ Он не работает((( Читал я документацию, но так, как мало примеров тяжело понять как составлять эти выражения. Если знаете, как правильно сформалировать маску, подскажите, пожалуйста! |
/^(?:\w{,10}|\d{,20})$/i |
<script language="JavaScript" type="text/javascript"> var str = '12345678901234567890'; var str1 = '1234567890R'; var str2 = '123456789R'; function foo(a) { if (/^\d{20}$/.test(a) || a.length == 10 && /[A-z]/.test(a) && /\d/.test(a) && !a.replace(/[A-z0-9]/g, "")) return true; return false }; document.write(foo(str)+" "+foo(str1)+" "+foo(str2)) </script> |
|
|
Часовой пояс GMT +3, время: 11:58. |