Регулярные выражения

Тема в разделе "PHP программирование", создана пользователем ioni, 1 апр 2008.

Наш партнер Genesis Hackspace
  1. ioni

    ioni Well-Known Member

    Регистрация:
    11 май 2006
    Сообщения:
    340
    Симпатии:
    0
    Сразу оговорюсь, что тема мне незнакома, поэтому прошу без фырканья.
    Любые конструктивные предложения приветствуются

    Код (Text):
                preg_match_all('/<img[^>]+>/i', $html, $content);

    if (!empty($content[0])) {

    echo '<h2 class="center">И вот все изображения из сообщения: '.get_the_title($post->post_parent).'</h2>'."\n".'<p class="center">';

    foreach ($content[0] as $key => $value) {

    if (preg_match('/thumbnail/', $value)) {
    // есть слово thumbnail в имени файла
    echo $value."\n";
    } else {

    echo preg_replace("/(jpg|gif|png)/","thumbnail.$0",$value)."\n";
    }
    };// foreach
    echo '</p><br class="clearall" />';
    }; // end if - проверка есть или нету
    Скрипт находит все изображения и выводит их так, как они лежат в оригинальном $html

    Для моих целей пости достаточно, но хочется красоты

    (1) выяснить, если ли вокруг img ссылка - и выводить ее
    (2) проверить, если у изображения есть thumbnail - находится ли он локально - то есть проверить, совпадает ли src метка с локальным адресом скрипта, которых хранится в переменной Server_Address
    (3) это ваще будет кайф - определить, установлен ли class в <img> и если нет - присвоить скажем class="nativeimage", а если да - то существующий заменить на "nativeimage"

    Для меня regexp - темный лес, но чувствую, что все должно быть просто

    Помощь?
     
  2. ioni

    ioni Well-Known Member

    Регистрация:
    11 май 2006
    Сообщения:
    340
    Симпатии:
    0
    Чувствуется бездна помощи...

    Ладно, если с тем не справляетесь - что по-проще?
    Мне нужно обрезать текст - но так, чтобы если в нем остались открытые метки, чтобы вернуло все с заркытыми :)
    Четкий php, если ему сказали отрезать 200 сантиметров, он столько и отрежет - а надо, чтобы если HTML есть (или BBCODE - не важно) - надо, чтобы возвращал закрытые метки
     
  3. ioni

    ioni Well-Known Member

    Регистрация:
    11 май 2006
    Сообщения:
    340
    Симпатии:
    0
    Никак :(:(:)
     
Загрузка...

Поделиться этой страницей