|
Знатоки регулярных выражений - как проверить любой URL ? |
☑ |
0
Ковычки
22.05.13
✎
13:19
|
Абсолютный и относительный, проверка только на правильность заполнения.
Регулярку надо и для perl и для grep.
|
|
1
PR
22.05.13
✎
13:19
|
А в чем сложность?
|
|
2
drcrasher
22.05.13
✎
13:20
|
(0) буковка "Я" => первая ссылка
не?
|
|
3
Ковычки
22.05.13
✎
13:20
|
(2) нет
|
|
4
PR
22.05.13
✎
13:20
|
+(1) А, пардон, ты же не про 1С.
|
|
5
Ковычки
22.05.13
✎
13:23
|
(1)
httpX://www.Яндекс.ru
http:www.yandex.ru
www.yandex.ru
www.Яндекс.ru
Яндек вообще не сру.ru
/www.yandex.ru/
/www.yandex.ru/xxx/ppp
/www.yandex.ru?dsfsfd?=sdfsdf
www.yandex.ru?sdfsdwdf&x=dfg
x[куча пробелов и прочих нечитаемых]www.yandex.ru?sdfsdwdf&x=dfg
|
|
6
drcrasher
22.05.13
✎
13:24
|
(3) а что не так?
if (!preg_match("~^(?:(?:https?|ftp|telnet)://(?:[a-z0-9_-]{1,32}".
"(?::[a-z0-9_-]{1,32})?@)?)?(?:(?:[a-z0-9-]{1,128}\.)+(?:com|net|".
"org|mil|edu|arpa|gov|biz|info|aero|inc|name|[a-z]{2})|(?!0)(?:(?".
"!0[^.]|255)[0-9]{1,3}\.){3}(?!0|255)[0-9]{1,3})(?:/[a-z0-9.,_@%&".
"?+=\~/-]*)?(?:#[^ '\"&<>]*)?$~i",$url,$ok))
return -1; // если не правильно - выход
собери в единую строку и скорми регэкспу
|
|
7
Ковычки
22.05.13
✎
13:24
|
URL может быть и частью URI, может быть только окончание
|
|
8
Ковычки
22.05.13
✎
13:25
|
(6)
что выдаст на topic.php?id=665873 ?
|
|
9
Ковычки
22.05.13
✎
13:26
|
да и причем тут пыхыпы
|
|
10
Ковычки
22.05.13
✎
13:27
|
вот это ?id=665873 тоже валидный url (если чо)
° - а это не валидный
|
|
11
drcrasher
22.05.13
✎
13:34
|
смотрим в (0), видим: "как проверить любой URL".
ты не путай урл и ури
в (8) - полная шняга для браузера
в (6) регексп, который проверяет валидность урла, а не ури.
|
|
12
Ковычки
22.05.13
✎
14:43
|
(11) это вы не путайте
никакая не шняга если задан базовый урл
|
|
13
Ковычки
22.05.13
✎
14:47
|
урл это вхождение в ури, ури состоит из схемы, авторизации если есть, пути, запроса и фрагмента
урл может быть всем ури или любым набором частей исключая начальные (или не исключая)
|
|
14
Лефмихалыч
22.05.13
✎
14:53
|
Выбирай. Тысячи их.
|
|
15
Ковычки
22.05.13
✎
14:55
|
(14) а сабж прочитать ?
|
|
16
Лефмихалыч
22.05.13
✎
14:56
|
(15) это скучно
|
|
17
sdv2000
22.05.13
✎
14:57
|
ну конечно, играться с гуглом значительно веселее
и ума много не надо :)
|
|
18
IVIuXa
24.05.13
✎
16:52
|
(0)
зачем?
мегапример в студию
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший