HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > PHP
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #51  
Старый 04.12.2008, 22:52
OnArs
Участник форума
Регистрация: 01.08.2008
Сообщений: 239
С нами: 9356016

Репутация: 31
По умолчанию

Хм... За исключением одного - почёму то переходя по ссылке [I]_http://wwws.co.uk/money/mortFixed5, а не Buy To Let

Как бы это исправить? =(

// уже решил....

Последний раз редактировалось OnArs; 05.12.2008 в 00:06..
 
Ответить с цитированием

  #52  
Старый 05.12.2008, 04:52
b3
Постоянный
Регистрация: 05.12.2004
Сообщений: 647
С нами: 11278406

Репутация: 818


По умолчанию

Есть страница, на ней по 50 ников юзверей, в исходнике они :
Цитата:
<a href="viewpro.php?uid=2088543" class="bold">levskarq_</a>
между етими тегами, есесно uid у всех разный, нужна регулярка которая всех запихнет в массив. Я делал :
Цитата:
preg_match('#class="bold">(.*?)</a>#UiS', $result, $matches);
ненаходит =\ находит, но не то что надо. С меня огромный плюсик, сижу уже больше часа.
 
Ответить с цитированием

  #53  
Старый 05.12.2008, 05:02
Solker
Участник форума
Регистрация: 04.05.2006
Сообщений: 161
С нами: 10537558

Репутация: 158
По умолчанию

PHP код:
preg_match_all(
'#<a href="viewpro\.php\?uid=([0-9]+)" class="bold">(.+?)</a>#'
$result
$matches); 
 
Ответить с цитированием

  #54  
Старый 06.12.2008, 02:42
OnArs
Участник форума
Регистрация: 01.08.2008
Сообщений: 239
С нами: 9356016

Репутация: 31
По умолчанию

И снова здравствуйте!

На странице есть много ссылок вида:
PHP код:

<a href="javascript:openWindow('/
best-buys/fees/p/maqtp5tiYJWTZJiVkWlqZpJrnmixpqvaypXJxqWUdpakqpus2qZgr6l_ttbQpJeq2mXHrNSveLLIosbGpLWmoJWrnKukopXJ1nOmu7ldl6XRctqy1Jx2yNegiMKf1W-dmqSkndOinqHKpdLIz5w/')" 
title="BM Solutions - Buy to Let"
Как бы так заменить всё тело ссылки, я имею ввиду то, что находится внутри ковычек, там где сейчас яваскрипт, на то что мне нужно?

Думаю, что в любом случае придётся пользоваться функцией str_replace, но вот как правильно составить регулярку?

Пробую вот так:
PHP код:
preg_match_all'<a href="(.+?)" title="BM Solutions - Buy to Let">'$result $matches ); 
Но увы... Подскажите, что-нибудь, пожалуйста!
 
Ответить с цитированием

  #55  
Старый 06.12.2008, 02:57
Doom123
Постоянный
Регистрация: 11.11.2006
Сообщений: 834
С нами: 10262314

Репутация: 668


По умолчанию

PHP код:
 preg_replace('#<a href=".+?" title="BM Solutions - Buy to Let">#im',$zamena,$result); 
Попробуй так ..

Последний раз редактировалось Doom123; 06.12.2008 в 03:01..
 
Ответить с цитированием

  #56  
Старый 06.12.2008, 03:00
Pashkela
Динозавр
Регистрация: 10.01.2008
Сообщений: 2,841
С нами: 9649706

Репутация: 3338


По умолчанию

PHP код:
preg_match_all('/<a href="(.*)" title(.*)>/s'$list$result);
echo 
$result[1][0]; 
 
Ответить с цитированием

  #57  
Старый 06.12.2008, 03:04
Doom123
Постоянный
Регистрация: 11.11.2006
Сообщений: 834
С нами: 10262314

Репутация: 668


По умолчанию

Pashkela * - означает что может не быть симолов вообще ...
так что лучше использовать + ...
и от жадности лечить тоже нада думаю .. вопросиком =)
 
Ответить с цитированием

  #58  
Старый 06.12.2008, 03:07
Pashkela
Динозавр
Регистрация: 10.01.2008
Сообщений: 2,841
С нами: 9649706

Репутация: 3338


По умолчанию

Это понятно, писано для данного конкретного случая, люблю поимпровизировать
 
Ответить с цитированием

  #59  
Старый 06.12.2008, 03:22
OnArs
Участник форума
Регистрация: 01.08.2008
Сообщений: 239
С нами: 9356016

Репутация: 31
По умолчанию

Цитата:
Сообщение от Pashkela  
PHP код:
preg_match_all('/<a href="(.*)" title(.*)>/s'$list$result);
echo 
$result[1][0]; 
Имено твой вариант работает...
А ты можешь переделать это под preg_replace?
Если не тяжело конечно...

Но мне нужно имено тело href'а, а титл кстати меняется для каждой ссылки...

Последний раз редактировалось OnArs; 06.12.2008 в 03:26..
 
Ответить с цитированием

  #60  
Старый 06.12.2008, 03:32
Pashkela
Динозавр
Регистрация: 10.01.2008
Сообщений: 2,841
С нами: 9649706

Репутация: 3338


По умолчанию

если тебе надо только ОДИН раз спарсить ПЕРВУЮ попавшуюся ссылку с ТАКИМИ условиями, то конечно лучше preg_replace.

А то, что "титл кстати меняется для каждой ссылки..." - именно у меня и предусмотренно

PHP код:
<?
preg_match
('/<a href="(.*)" title(.*)>/s'$list$result);
echo 
$result[1];
?>
про тело href-а не допонял - оно и есть, только без кавычек, если надо с кавычками, просто удали их из регулярки

Тьфу блин, башка вообще уже не варит в пол-третьего В общем preg_replace как ты хочешь применить? Сохранить в файл и там заменить по тем условиям, что тебе надо? Сформулируй задачу почетче. Сколько таких ссылок на странице - 1 или несколько и т.д.

Последний раз редактировалось Pashkela; 06.12.2008 в 03:37..
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Delphi]/[Pascal] Задай вопрос, получи ответ Isis С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby 6762 17.06.2010 21:23
Всё о беспороводном соединении на кпк и смартфонах! Задай вопрос - получи ответ! ARMENIN Беспроводные технологии/Wi-Fi/Wardriving 2 02.11.2008 00:40



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.