1. Требуются разработчики и тестеры для проекта codebyOS. Требования для участия в проекте: Знание принципов работы ОС на базе Linux; Знание Bash; Крайне желательное знание CPP, Python, Lua; Навыки системного администрирования. Подробнее ...

    Скрыть объявление

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

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

  1. ioni

    ioni Well-Known Member

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

    Код:
    			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

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

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

    ioni Well-Known Member

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

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