|
|
|
| У меня есть поле сайт в бд. как мне проверить является ли информация в этом поле ссылкой? то есть проверить на то чтобы было например так domain.ru можно без http и www | |
|
|
|
|
|
|
|
для: Buhen
(28.12.2007 в 22:03)
| | Никто не знает??? | |
|
|
|
|
|
|
|
для: Buhen
(29.12.2007 в 13:11)
| | Используйте поиск по форуму! Задолбали такие вопросы из разряда:
проверить дату
проверить урлы
выдрать из html
проверить на цифры
проверить мыло
и т.д. | |
|
|
|
|
|
|
|
для: Buhen
(29.12.2007 в 13:11)
| |
<?php
$url = "http://mysite.ru";
if(!preg_match("#^(http://|www)?[a-z0-9\.-]+\.[a-z]{1,6}$#",$url))
echo("Это не URL");
else
echo "Это URL";
?>
|
| |
|
|
|
|
|
|
|
для: Faraon
(29.12.2007 в 14:10)
| | большое спасибо Faraon! А домен 1 уровня может состоять из 1 буквы? | |
|
|
|
|
|
|
|
для: Buhen
(29.12.2007 в 14:58)
| | Может, но таких не существует на данный момент. | |
|
|
|
|
|
|
|
для: Buhen
(29.12.2007 в 14:58)
| | >А домен 1 уровня может состоять из 1 буквы
Вы представляете что такое домен 1 уровня? | |
|
|
|
|
|
|
|
для: Faraon
(29.12.2007 в 23:56)
| | А вы смотрели, что у себя в выражении написали? \.[a-z]{1,6}$ | |
|
|
|
|
|
|
|
для: kasmanaft
(30.12.2007 в 09:02)
| | to Kasmanaft
Да признаю, опечатку сделал :)
P.S. Хотя не знаю в спаме видел адрес отправителя с домена первого уровня, с одной буквой.
Конечно понятно, что в адресе отправителя можно написать все что угодно. | |
|
|
|
|
|
|
|
для: Faraon
(29.12.2007 в 14:10)
| | Говорят, домены на русском скоро появятся.
Стоит это учитывать?
Хорошо им: все без очереди пропускают! : ) | |
|
|
|
|
|
|
|
для: Eugene77
(29.12.2007 в 17:09)
| | Они и сейчас имеются, только без плагина доступ к таким сайтам получить нельзя, поэтому пока можно не заботиться об этом. | |
|
|
|
|
|
|
|
для: cheops
(29.12.2007 в 17:18)
| | Еще 1 маленький вопросик - как мне разрешаить использование символа # в данной конструкции вот где color=([a-z]+)\] ?
$comment = preg_replace("#\[color=([a-z]+)\](.*?)\[/color\]#is", '<FONT COLOR="$1">$2</FONT>', $comment);
|
Получится так или нет?
$comment = preg_replace("#\[color=([a-z]+#)\](.*?)\[/color\]#is", '<FONT COLOR="$1">$2</FONT>', $comment);
|
| |
|
|
|
|
|
|
|
для: Buhen
(29.12.2007 в 19:17)
| | Нет, так не получится...
Нужно экранировать этот диез, либо изменить ограничители рег. выражения, например, на |
"#\[color=([a-z]+)\](.*?)\[/color\]#is
"|\[color=([a-z#]+)\](.*?)\[/color\]|is
UPD Только "#" должен, наверное, стоять перед буквами [a-z]+
И в таком случае не хватает еще цифр, и диапазон букв можно поуже сделать [0-9A-F]+
$comment = preg_replace("#\[color=(\#[0-9A-F]+|[a-z]+)\](.*?)\[/color\]#is", '<FONT COLOR="$1">$2</FONT>', $comment); | |
|
|
|
|
|
|
|
для: kasmanaft
(30.12.2007 в 09:14)
| | Большое спасибо!! Все заработало на ура! | |
|
|
|