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

  • Автор темы Автор темы ioni
  • Дата начала Дата начала
I

ioni

Сразу оговорюсь, что тема мне незнакома, поэтому прошу без фырканья.
Любые конструктивные предложения приветствуются

Код:
			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 - темный лес, но чувствую, что все должно быть просто

Помощь?
 
Чувствуется бездна помощи...

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

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab

🚀 Первый раз на Codeby?
Гайд для новичков: что делать в первые 15 минут, ключевые разделы, правила
Начать здесь →
🔴 Свежие CVE, 0-day и инциденты
То, о чём ChatGPT ещё не знает — обсуждаем в реальном времени
Threat Intel →
💼 Вакансии и заказы в ИБ
Pentest, SOC, DevSecOps, bug bounty — работа и проекты от проверенных компаний
Карьера в ИБ →

HackerLab