Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Регулярка в JS

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Регулярное выражение в JS (прошу простить, если не в тот раздел написал)
Saturn35
Отправлено: 09 Марта, 2013 - 18:36:16
Post Id


Новичок


Покинул форум
Сообщений всего: 5
Дата рег-ции: Янв. 2013  


Помог: 0 раз(а)




Почему работает не так, как ожидалось?
CODE (javascript):
скопировать код в буфер обмена
  1. var login = $("#rLg").val();
  2. var expr = /^[A-z0-9]+$/;
  3. if(login==""){
  4. return "LoginIsEmpty";
  5. }else if(login.length<4){
  6. return "LoginLength";
  7. }
  8. if(!expr.test(login)){
  9. return "NotValid";
  10. }else if(expr.test(login)){
  11. $.ajax({//аякс...});
  12. }

Насколько я понимаю, тест регулярки должен вернуть "false" если в логине будут какие-то другие символы, кроме букв лат. алфавита и цифр. Но что-то явно работает не так, т.к. вводя в поле логина вот такое вот хотя-бы: ____ регулярка возвращает true или не тестирует вовсе, т.к. далее выполняется ajax. С другими символы не пропускает (кроме тех, которые указаны в регулярке), а символ нижнего подчеркивания, видимо, игнорирует.

Заранее благодарю за помощь.

(Отредактировано автором: 09 Марта, 2013 - 18:38:35)

 
 Top
LIME
Отправлено: 09 Марта, 2013 - 18:42:59
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




/^[A-Za-z0-9]+$/
 
 Top
Saturn35
Отправлено: 09 Марта, 2013 - 18:48:05
Post Id


Новичок


Покинул форум
Сообщений всего: 5
Дата рег-ции: Янв. 2013  


Помог: 0 раз(а)




LIME пишет:
/^[A-Za-z0-9]+$/

LIME, спасибо. Помогло. Теперь появился другой вопрос - почему в другой регулярке работает А-z, а в этой нет

CODE (javascript):
скопировать код в буфер обмена
  1. var expr = /^[A-z]+\s?[А-z]+-?[А-z]+$/;
 
 Top
LIME
Отправлено: 09 Марта, 2013 - 18:49:35
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




а ты посмотри в таблице кодировки что лежит между A и z
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB