Показать сообщение отдельно

  #3  
Старый 03.06.2008, 14:38
Корвин
Участник форума
Регистрация: 26.02.2007
Сообщений: 259
Провел на форуме:
302951

Репутация: 67
Отправить сообщение для Корвин с помощью ICQ
По умолчанию

Цитата:
Сообщение от Gadik  
Добрый день. Помогите пожалуйста с регуляркой.

раньше нужно было из текста вида:

span class="show_detail">
<P>The Anti-Monopoly Committee of Ukraine has allowed Cyprus-based Davento P.L.C. to acquire a controlling stake in TOV Briz Invest, based in Kyiv. The AMC press-service reported the development.<P>TOV Briz Invest leases property in Kyiv.</P> и т.д.
</span>

взять только все, что между <span></span>


Сейчас исходный текст имеет вид:

<span class="show_detail">

<P style="MARGIN: 0cm 0cm 6pt"><SPAN lang=EN-US style="FONT-SIZE: 11pt; mso-ansi-language: EN-US">The eighth round of negotiations between Ukraine and the European Union will be held in Kyiv between June 2-4. ...<?xml:namespace prefix = o ns = "urn:schemas-microsoft-comfficeffice" /><o></o></SPAN></P><P style="MARGIN: 0cm 0cm 6pt"><SPAN lang=EN-US style="FONT-SIZE: 11pt; mso-ansi-language: EN-US">The eighth round... и тому подобная байда</SPAN></P>
</span>

и теперь мой скрипт качает только кусок который стоит до <?xml:

вот сайм скрипт:

$full_content = file_get_contents($url);
#<span class="show_detail">
preg_match('|<span class=\"show_detail\">(.*)<\/span>|Uis', $full_content,$full_cut_content);
$title = $full_cut_content[0] ;
preg_match('|<span class=topcontent style=\'margin-top: 15px;\' >(.*)<\/span>|Uis', $full_content,$body);


плиз =)


для этого есть удобная функция уже написаная


PHP код:
 function preg_match_between($a_sStart$a_sEnd$a_sSubject)
{
$pattern '/'$a_sStart .'(.*?)'$a_sEnd .'/';
preg_match ($pattern$a_sSubject$result);

$pattern '/'$a_sStart .'/';
$result preg_replace ($pattern''$result[0]);

$pattern '/'$a_sEnd .'/';
$result preg_replace ($pattern''$result);

return 
$result;

 
Ответить с цитированием