ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #61  
Старый 06.12.2008, 03:41
Аватар для AkyHa_MaTaTa
AkyHa_MaTaTa
Постоянный
Регистрация: 19.03.2007
Сообщений: 684
Провел на форуме:
3152874

Репутация: 1020


Отправить сообщение для AkyHa_MaTaTa с помощью ICQ
По умолчанию

Цитата:
Сообщение от OnArs  
Но мне нужно имено тело href'а, а титл кстати меняется для каждой ссылки...
Если тока для href, то почти как указал Pashkela:
<?
preg_match('/<a href="(.*)" .*>/s',$a, $result);
echo $result[1];
?>
 
Ответить с цитированием

  #62  
Старый 06.12.2008, 03:51
Аватар для OnArs
OnArs
Участник форума
Регистрация: 01.08.2008
Сообщений: 239
Провел на форуме:
448388

Репутация: 31
Thumbs up

2Pashkela:

Примерно такого содержания код страницы:
PHP код:
<a href="javascript:openWindow('/
berQ0p6inQ/')" 
title="t">text here</a>
<
span>Enquire</span></a>
        </
div><div class="buttonDetails">
<
class="button details" href="javascript:openWindow('/
berQ0p6inQ/')" 
title="t">and here text too</a
В первом случае встречается ссылка без указания class'а в другом с указанием class'a.

Всего на странице около 7 ссылок и хотелось бы реализовать через preg_replace.

Нужно заменить чудо:
href="javascriptopenWindow('/berQ0p6inQ/')"
на
href="index.html"

Вот и всё...

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

  #63  
Старый 06.12.2008, 04:31
Аватар для AkyHa_MaTaTa
AkyHa_MaTaTa
Постоянный
Регистрация: 19.03.2007
Сообщений: 684
Провел на форуме:
3152874

Репутация: 1020


Отправить сообщение для AkyHa_MaTaTa с помощью ICQ
По умолчанию

Ну как то так
PHP код:

$sourc
=<<<HERE
<a href="javascript:openWindow('/
berQ0p6inQ/')" title="t">text here</a>
<span>Enquire</span></a>
        </div><div class="buttonDetails">
<a class="button details" href="javascript:openWindow('/
berQ0p6inQ/')" title="t">and here text too</a>
<a href="javascript:openWindow('/
berQ0p6inQ/')" title="t">text here</a>
<span>Enquire</span></a>
        </div><div class="buttonDetails">
<a class="button details" href="javascript:openWindow('/
berQ0p6inQ/')" title="t">and here text too</a> 
<a href="javascript:openWindow('/
berQ0p6inQ/')" title="t">text here</a>
<span>Enquire</span></a> 
HERE;


  echo 
preg_replace("|(javascript:openWindow\('\/.*\/'\))|sU""index.html",$sourc); 
 
Ответить с цитированием

  #64  
Старый 06.12.2008, 05:45
Аватар для Pashkela
Pashkela
Динозавр
Регистрация: 10.01.2008
Сообщений: 2,841
Провел на форуме:
9220514

Репутация: 3338


Отправить сообщение для Pashkela с помощью ICQ
По умолчанию

PHP код:
<?
/* Создай файл tema.txt и запихни туда следующее, чтобы проверить работу проги:

 <a href="javascript:openWindow('/berQ0p6inQ/')" title="t">text0</a> 
 <a class="button details" href="javascript:WINDOW('/berQ0341/')" title="t">text1</a> 
 <a class="button details" href="javascript:WINDOW('/berQ0342/')" title="t">text2</a> 
 <a class="button details" href="javascript:WINDOW('/berQ0343/')" title="t">text3</a>

*/


/* Чтобы проверить результаты работы надо 
запустить в опере, выйдет два столбика - 
оригинал и измененный, просто поднести  мышку 
и посмотреть, как изменились ссылки, также
 создается файл tema1.txt, где измененные исходники */

$fp fopen("tema.txt""r");
$list fread($fpfilesize("tema.txt"));
fclose($fp);
echo 
$list "\r\n";   /* удалить потом, просто показывает как было в оригинале */
/*--------------------------------------------------------------------------------------------------------------*/
// Собственно сама замена
/*------------------*/
if (preg_match_all('/href="(.*)" title(.*)/i'$list$result)) 
{
$count count($result[1])-1;
for (
$i=0;$i<=$count;$i++) $list str_replace($result[1][$i], "index.html"$list);
}
/*------------------*/
// Конец замены
$fp fopen("tema1.txt""a+");
fwrite($fp,$list "\r\n");
fclose($fp);
echo 
$list "\r\n";
/*-------------------------------------------------------------------------------------------------------------*/
?>
будет работать независимо от содеражания
того, что в кавычках "javascriptpenWindow('/
berQ0p6inQ/')" и вообще легко подстраивается под
любые нужды

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

  #65  
Старый 06.12.2008, 10:49
Аватар для OnArs
OnArs
Участник форума
Регистрация: 01.08.2008
Сообщений: 239
Провел на форуме:
448388

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

Еее!!! Большое Спасибо!!!
Всё наконец то получилось, Сейчас раздам Плюсы!
 
Ответить с цитированием

  #66  
Старый 07.12.2008, 14:54
Аватар для _Kris_
_Kris_
Познающий
Регистрация: 22.07.2008
Сообщений: 62
Провел на форуме:
304390

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

Надо скопировать текст который находится между <b><kis="ar"> и </b>
Вот вообщем надо регулярку, текст не в одну строку а в несколько.
 
Ответить с цитированием

  #67  
Старый 07.12.2008, 15:36
Аватар для Chaak
Chaak
Познавший АНТИЧАТ
Регистрация: 01.06.2008
Сообщений: 1,047
Провел на форуме:
5321514

Репутация: 3313


Отправить сообщение для Chaak с помощью ICQ
По умолчанию

Цитата:
Сообщение от _Kris_  
Надо скопировать текст который находится между <b><kis="ar"> и </b>
Вот вообщем надо регулярку, текст не в одну строку а в несколько.
PHP код:
$w '<b><kis="ar"> и </b>';
preg_match('#<b><kis\="ar">(.{0,})</b>#im',$w,$n);
$a$n['1'];
$b $n['1']; 

Последний раз редактировалось ChaaK; 07.12.2008 в 16:04..
 
Ответить с цитированием

  #68  
Старый 07.12.2008, 15:46
Аватар для AkyHa_MaTaTa
AkyHa_MaTaTa
Постоянный
Регистрация: 19.03.2007
Сообщений: 684
Провел на форуме:
3152874

Репутация: 1020


Отправить сообщение для AkyHa_MaTaTa с помощью ICQ
По умолчанию

PHP код:
 $w = <<<THIS
 <b><kis="ar">мля большой при большой текст
даеше и с прееводом строки 
несколько 
раз
 </b>  
 
THIS;
 
preg_match('#<b><kis\="ar">(.*?)</b>#is',$w,$n);


 
print_r($n); 
 
Ответить с цитированием

  #69  
Старый 07.12.2008, 15:56
Аватар для _Kris_
_Kris_
Познающий
Регистрация: 22.07.2008
Сообщений: 62
Провел на форуме:
304390

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

Цитата:
preg_match('#<b><kis\="ar">(.*?)</b>#is',$w,$n);
Цитата:
</b>#is
is - что это значит?
 
Ответить с цитированием

  #70  
Старый 07.12.2008, 16:00
Аватар для _Kris_
_Kris_
Познающий
Регистрация: 22.07.2008
Сообщений: 62
Провел на форуме:
304390

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

Кстати не пашет.
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Delphi]/[Pascal] Задай вопрос, получи ответ Isis С/С++, C#, Delphi, .NET, Asm 6762 17.06.2010 21:23
[ *NIX ] Задай вопрос - получи ответ. Xszz *nix 1547 15.06.2010 15:41
[Lan] Задай вопрос - получи ответ! sedoy_xxx АнтиАдмин 133 31.03.2010 08:35
Всё о беспороводном соединении на кпк и смартфонах! Задай вопрос - получи ответ! ARMENIN Беспроводные технологии/WPAN/WLAN 2 02.11.2008 00:40
ЕсТь ВоПрос Guma Чаты 4 26.10.2005 21:48



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


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




ANTICHAT.XYZ