|
|
|
| Есть переменная
$text = "Слова слово слава и т.д и т.п. http://site.ru опять слова www.site2.ru и опять слова site.com слова слова mail@mail.ru";
Вообщем нужно из переменной вырезать всю каку ссылки различного вида, адреса почты
Заранее благодарю. | |
|
|
|
|
|
|
|
для: pzserg
(06.10.2008 в 01:09)
| | help | |
|
|
|
|
|
|
|
для: pzserg
(06.10.2008 в 16:54)
| | Это сделать очень сложно, так как нет какого-то определенного шаблона, трудно отличить обычные слова от того, что вам не нужно
Если вы например будете обрабатывать ссылки и почтовые адреса bb-кодом , тогда можно с помощью регулярки вырезать все что начинавется с <a href и кончается </a> | |
|
|
|
|
|
|
|
для: pzserg
(06.10.2008 в 01:09)
| | разбивайте explode вашу строку по пробелам и отсеивайте слова, похожие на мусор | |
|
|
|
|
|
|
|
для: pzserg
(06.10.2008 в 01:09)
| | Примерно вот таким образом можно отсеить :
<?
$xlam = "слово слово слово http://www.site.com слово слово слово www.site.com слово слово слово site.com слово слово слово mail@site.com";
$arr = explode(" ", $xlam);
foreach($arr as $val)
{
if((strpos($val, "http://") === false) &&
(strpos($val, " www.") === false) &&
(strpos($val, "@") === false) &&
(strpos($val, ".", 1) === false))
$string .= $val." ";
}
echo rtrim($string);
?>
|
К сожалению с регулярными выражениями я не очень... дружу. Возможно с ними было бы лучше. | |
|
|
|