Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > регулярка, как найти точное совпадение


Автор: DeamonShan 4.5.2011, 14:27
привет всем. Помогите пожалуйста в написании регулярки:

нужно найти в тексте точное совпадение:

Код

<td width="100%" valign="top">


пишу 

Код

'/<td width="100%" valign="top">/i'


не работает

Автор: systemIV 4.5.2011, 14:33
Скорее всего ты делаешь что не так дальше. Тут сложно ошибиться с рег выражением. Вот тут проверяй http://regexpr.ru/ можешь попробовать знак процента заэкранировать

Автор: DeamonShan 4.5.2011, 14:37
Код

       $content=preg_replace('/<td width="100%" valign="top">/','<td width="100%" valign="top">'.$SOMETEXT,$content);


вот так у меня...

и не работает, даже с заэкранированным знаком %

Автор: patap 4.5.2011, 14:42
в данном случае лучше использовать функцию str_replace()

Автор: DeamonShan 4.5.2011, 14:47
не помогает ни та ни другая функция....

Добавлено через 2 минуты и 30 секунд
Функция str_replace пишет ни одного совпадения....

Автор: patap 4.5.2011, 14:50
думаю стоит взглянуть на код вцелом

Добавлено через 39 секунд
и плюс кусок входных данных

Автор: DeamonShan 4.5.2011, 14:55
там никакого кода нет...

$content - содержит HTML документ из файла



Код

        $content=file_get_contents($filename); //- $content - не пустой... выводит норм
        $adSens='

        <script type="text/javascript"><!--
        google_ad_client = "";
        /*  */
        google_ad_slot = "";
        google_ad_width = 728;
        google_ad_height = 90;
        //-->
        </script>
        <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
        </script>

        ';

        $content=str_replace('<td width="100%" valign="top">','<td width="100%" valign="top">'.$adSens,$content,$count);
        //echo $count;

        echo $content;



все что я делаю...

Добавлено @ 14:57
Код

<td width="100%" valign="top">
<h1>Заголовок</h1>
<div><!-- Яндекс.Директ -->

</div><b>аап</b>
<ul>
<li><a href="0.html">ываываыва</a></li>
<li><a href="1.html">ыва ыва ыв</a></li>
<li><a href="2.html">ы ваыва </a></li>

.............................................
</p></td>



это входные данные...

Автор: patap 4.5.2011, 15:08
посмотри исходный код того что возвращает file_get_contents, именно html исходник. Там должно быть заэкранированны кавычки. Если да, то проблема в магических кавычках

Автор: DeamonShan 4.5.2011, 15:13
в исходнике не заэкранированны кавычки...

Проблему решил заменив кусок 

<!-- Яндекс.Директ -->

На адсенс код... 

но все же остается не решенной задача... не понятно поведение  кода...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)