Модераторы: Aliance, skyboy, MoLeX, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> выборка ссылки 
:(
    Опции темы
alligator
Дата 6.9.2005, 19:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 730
Регистрация: 28.1.2004

Репутация: нет
Всего: 1



составил свою первую регулярку посмотрите пожалуйста верно или нет.....
Код

<?
$lnk = '<a href="http://netz.ru/">test string</a>';
preg_match("/http:\/\/([a-zA-Z])*\.?([a-zA-Z])*\.?(ru|net|com|org|biz|ws|de)/i", $lnk, $regs);
print $regs[0]."<br>";
print $regs[3]."<br>";
?>

Также проверяються домены второго уровня типа *.com.ru
p.s. кстати прочитал статью в книжке всего один раз и составил вообще не парясь ))) хотя думал что сложно ваще

Это сообщение отредактировал(а) alligator - 6.9.2005, 19:59
PM MAIL   Вверх
Mal Hack
Дата 6.9.2005, 20:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 16
Всего: 261



Сложного нет, просто надо экспериментировать :%)
Глянь вот эту тему: http://forum.vingrad.ru/index.php?showtopi...view=getnewpost
и эту: http://forum.vingrad.ru/index.php?showtopi...view=getnewpost
PM ICQ   Вверх
alligator
Дата 6.9.2005, 20:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 730
Регистрация: 28.1.2004

Репутация: нет
Всего: 1



ок спасибо
PM MAIL   Вверх
alligator
Дата 6.9.2005, 20:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 730
Регистрация: 28.1.2004

Репутация: нет
Всего: 1



переделал в такой вид =)
Код

<?
preg_match_all("/((http|https)?:\/\/)([\w])*\.?([\w\d])*\.?[\w\d]*\.?(ru|net|com|org|biz|ws|de|info)/i", $lnk, $regs);
?>


Это сообщение отредактировал(а) alligator - 6.9.2005, 20:44
PM MAIL   Вверх
alligator
Дата 6.9.2005, 21:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 730
Регистрация: 28.1.2004

Репутация: нет
Всего: 1



почитал один из постов что ты дал есть вопросик , что нехватает у моего рега чтобы не захламлять массив что бы был вида потипу
Код

Array
(
    [0] => Array
        (
            [0] => http://netz.msk.ru
            [1] => http://netz.ru
            [2] => http://comet.ru
            [3] => http://www.zada.com.ru
        )


а не
Код

  Array
(
    [0] => Array
        (
            [0] => http://netz.msk.ru
            [1] => http://netz.ru
            [2] => http://comet.ru
            [3] => http://www.zada.com.ru
        )

    [1] => Array
        (
            [0] => http://
            [1] => http://
            [2] => http://
            [3] => http://
        )

    [2] => Array
        (
            [0] => http
            [1] => http
            [2] => http
            [3] => http
        )

    [3] => Array
        (
            [0] => z
            [1] => z
            [2] => t
            [3] => w
        )

    [4] => Array
        (
            [0] => k
            [1] => 
            [2] => 
            [3] => a
        )

    [5] => Array
        (
            [0] => ru
            [1] => ru
            [2] => ru
            [3] => ru
        )

)



А то я долго пытался разглядеть регулярку которую там изменили , так ничего и не нашел ((

Это сообщение отредактировал(а) alligator - 6.9.2005, 21:07
PM MAIL   Вверх
Mal Hack
Дата 6.9.2005, 21:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 16
Всего: 261



Тут просто можешь после preg'a сделать:
Код

$matches = $matches[1];

PM ICQ   Вверх
alligator
Дата 6.9.2005, 22:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 730
Регистрация: 28.1.2004

Репутация: нет
Всего: 1



а точно что то торможу .... пасиб

Это сообщение отредактировал(а) alligator - 6.9.2005, 22:47
PM MAIL   Вверх
Guest
Дата 8.9.2005, 02:54 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Может пригодится : была такай задача превратить относительные линки в абсолютные, причём в любых комбинациях.
Код

<?php


$yourdomainwithhttp = 'http://your.server';

$x = array(
'<a href="/my/file.html">',
'<a href="my/file.html">',
'<a href=/my/file.html>',
'<a href=my/file.html>',
'<a href="http://other/my/file.html">',
'<a href=http://other/my/file.html>',
'<a target=_blank href="/my/file.html">',
'<a target=_blank href="http://other/my/file.html">',
'<a target=_blank href="/my/file.html" class="link">',
'<a target=_blank href="http://other/my/file.html" class="link">',
'<img target=_blank src="/my/file.html" class="link">'
);

foreach ($x as $v) {
   echo "was: $v\n";
   $v = preg_replace('#<(a|img|object|applet|embed)(.+?)(href|src|codebase)=(?!"?http://)(?!"?ftp://)(?!"?https://)(?!"?mailto:)(?!"?telnet://)(?!"?news://)(?!"?wais://)(?!"?goopher://)"?\/?(.+?)"?([>\s])#si', '<$1$2$3="'.$yourdomainwithhttp.'/$4"$5', $v);
   echo "is: $v\n\n";
}


?>




Выражение отсюда (это наиболее полный вариант) часто использую для выборки ссылок, просто выкидываю ненужные фрагменты
  Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Тексты | Следующая тема »


 




[ Время генерации скрипта: 0.0661 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.