Регулярное выражение не получается
Понадобилось сделать проверку, соответсвует ли строка неоходимому критерию.
Требуется найти: Содержит ли строка 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, время: 00:38. |