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 :: Нужна помощь с регулярными выражениями

 PHP.SU

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


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

> Без описания
vanicon
Отправлено: 17 Мая, 2012 - 13:10:19
Post Id



Частый посетитель


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


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




Есть форма регистрации, и необходимо проверить на корректность логин. Логин может быть как на русском так и на английском, цифры и нижние подчеркивание(_). Но нижние подчеркивание должно разделять 2 слова, то есть подчеркивание не должно быть 1 символов и последним.


-----
Так было, так есть и так будет
 
 Top
DeepVarvar Супермодератор
Отправлено: 17 Мая, 2012 - 13:19:07
Post Id



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


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


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




Не более одного подчеркивания: /^[a-zа-яёЁ]+?(_[a-zа-яёЁ]+){1,}$/iu
Одно и более: /^[a-zа-яёЁ]+?([_]+[a-zа-яёЁ]+){1,}$/iu
(Добавление)
Добавил числа и тире:
/^[a-zа-я0-9ёЁ\-]+?(_[a-zа-я0-9ёЁ\-]+){1,}$/iu
/^[a-zа-я0-9ёЁ\-]+?([_]+[a-zа-я0-9ёЁ\-]+){1,}$/iu
 
 Top
vanicon
Отправлено: 17 Мая, 2012 - 21:04:55
Post Id



Частый посетитель


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


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




DeepVarvar Спасибо большое, работает!


-----
Так было, так есть и так будет
 
 Top
vanicon
Отправлено: 18 Мая, 2012 - 14:51:00
Post Id



Частый посетитель


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


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




Работает, но чуть чуть не так. Нижние подчеркивание может разделять два слово, но его может и вовсе не быть. Если простой логин типа admin то его регулярка уже не пропускает так как нет нижнего подчеркивания...


-----
Так было, так есть и так будет
 
 Top
DeepVarvar Супермодератор
Отправлено: 18 Мая, 2012 - 14:57:03
Post Id



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


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


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




Все там работает, я же проверял, там условие стоит "?" это значит что второй части вообще может не быть. Ну щас еще раз проверю.
(Добавление)
Точна, фикс:
/^[a-zа-я0-9ёЁ\-]+([_]+[a-zа-я0-9ёЁ\-]+)*$/iu
(Добавление)
Спойлер (Отобразить)
 
 Top
kpripper
Отправлено: 01 Июня, 2012 - 21:15:17
Post Id


Новичок


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


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




Помогите составить регулярное выражение, jно должно находить части текста в квадратных скобках [], включительно с ними.
 
 Top
Neldmit
Отправлено: 02 Июня, 2012 - 16:22:46
Post Id


Новичок


Покинул форум
Сообщений всего: 25
Дата рег-ции: Июль 2010  


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




 
 Top
kpripper
Отправлено: 03 Июня, 2012 - 11:40:50
Post Id


Новичок


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


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




Не работает почему-то.

PHP:
скопировать код в буфер обмена
  1. $none="";
  2.  
  3.   $res = ereg_replace("#(\[.*\])#Usi", $none, "Так, если в начале ХХ века ОП опи­сывался как казуистика, то в настоящее время среди острых хирургических заболеваний органов брюшной полости он уступает только острому аппендициту и острому холециститу [1, 3, 4, 5, 16, 26];");
  4.  
  5.  print_r ($res);


выводит исходную строку.
 
 Top
Мелкий Супермодератор
Отправлено: 03 Июня, 2012 - 13:17:26
Post Id



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


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


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




Ereg и preg - разные вещи.


-----
PostgreSQL DBA
 
 Top
kpripper
Отправлено: 03 Июня, 2012 - 15:30:07
Post Id


Новичок


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


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




Я думал регулярное составление регулярного выражения не зависит от функции, в которой используется. Как же мне написать ?
 
 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