|
|
|
| Всем привет.
Сделана регулярка, проверяющая на валидность домашнюю страницу пользователя:
'^(http://)+[a-z0-9_.-]+\.+[a-z]{2,4}$'
|
Как-бы мне после этого сделать ограничение на длину вводимой строки, тоесть нужно как-то сказать в конце регулярки, что всё, что было до конца строки - {2,50}. В скобки какие-то поместитть чтоли?!
Такая мелочь, а потратил битый час на перепрочтение мануалов впустую, прошу помощи у вас.
Спасибо. | |
|
|
|
|
|
|
|
для: nax
(08.11.2007 в 22:02)
| | а так:
'^((http://)+[a-z0-9_.-]+\.+[a-z]{2,4}){2,50}$'
|
подходит? | |
|
|
|
|
|
|
|
для: ddhvvn
(08.11.2007 в 22:06)
| | Нет, я так пробывал:
$email = "user@host.ru";
if(!eregi('^((http://)+[a-z0-9_.-]+\.+[a-z]{2,4}){2,50}$', $email)) echo "неверно<br />"
|
Выводит: неверно. | |
|
|
|
|
|
|
|
для: nax
(08.11.2007 в 22:09)
| | Извините:
<?php
$home = "http://site.ru";
if(!eregi('^((http://)+[a-z0-9_.-]+\.+[a-z]{2,4}){2,50}$', $home)) echo "неверно<br />";
|
Выводите: "Неверно", хотя всё правильно.
Тяжёлый денек был :) заработался. | |
|
|
|
|
|
|
|
для: nax
(08.11.2007 в 22:15)
| | А нельзя сначала проверить строку на длину, а потом регуляркой на проф-пригодность? Зачем лес городить? | |
|
|
|
|
|
|
|
для: SHAman
(12.11.2007 в 14:45)
| | strlen + preg_match - очень не изящное решение. Приятно смотреть, когда всё проверяет одна функция. | |
|
|
|
|
|
|
|
для: nax
(08.11.2007 в 22:15)
| | > Выводите: "Неверно", хотя всё правильно.
Неправильно. Это выражение для строка типа "http://example.com/http://example.com/". | |
|
|
|
|
|
|
|
для: Unkind
(12.11.2007 в 14:53)
| | Даже "http://http://http://http://example.comhttp://http://http://http://example.com" :)
2nax
если уж так хочется проверить длинну строки, используя рег. выражения, можно попробовать вот так:
#^(?=.{1,50}$)http://[a-z0-9_.-]+\.+[a-z]{2,4}$#i (и использовать не eregi, a preg_match) | |
|
|
|
|
|
|
|
для: kasmanaft
(12.11.2007 в 15:40)
| | Спасибо, работает. | |
|
|
|