Помощник
|
Помогите с регуляркой для изображений |
Rombi
|
Сообщение
#1
|
||
|
|
||
|
|||
Drupal_way |
10.1.2015, 2:17;
Ответить: Drupal_way
Сообщение
#2
|
|
КАк-то так (не мое, но у меня работало):
preg_match_all('#<img.*src="(.*)".*>#isU', $content, $match); //Проверка и получение только ссылки if (strlen($imgosn)<1){preg_match_all('#<img.*src="(.*)".*>#isU', $content, $match); @$imgosn = $match[1][0]; } //если нужен полностью html-код, то так @$imgosn = $match[0][0]; вот так вытянуть все теги IMG из текста $regex = "/<img[^>]+src\s*=\s*[\"']\/?([^\"']+)[\"'][^>]*\>/"; preg_match ($regex, $text, $matches); $images = (count($matches)) ? $matches : array(); А вот так удалить из текста первый тег IMG (или любое другое кол-во - от последнего параметра зависит) $text= preg_replace('/<img[^>]+\>/', '', $text, 1); -------------------- |
|
|
xoopw |
10.1.2015, 2:46;
Ответить: xoopw
Сообщение
#3
|
|
<img[^>]*src=['\"](.*?)['\"][^>]*>
|
|
|
Rombi
|
Сообщение
#4
|
|
Решение
Код preg_match_all("'<img src=\"(\S*.(jpg))\" alt=\"Новость на .*\" class=\"image\"'isU", $response, $img);
$img = $img[1][0]; -------------------- |
|
|
AmoSeo |
10.1.2015, 6:41;
Ответить: AmoSeo
Сообщение
#5
|
|
Код .......(\S*.(jpg))..... Вы точно уверены что всегда картинки будут только jpg? Есть также png, jpeg, gif, bmp и т.д. -------------------- Наполнение магазинов товарами: Opencart, SimplaCMS, Webasyst и т.д. |
|
|
x64 |
10.1.2015, 7:51;
Ответить: x64
Сообщение
#6
|
|
|
|
|
Rombi
|
Сообщение
#7
|
|
AmoSeo, там все в с таким расширением.
x64, а зачем мне парсить все подряд картинки и потом отсеивать? -------------------- |
|
|
x64 |
10.1.2015, 15:11;
Ответить: x64
Сообщение
#8
|
|
так Ваш вариант как раз и парсит «всё подряд»
Код \" alt=\"Новость на .*\" class=\"image\" зачем это нужно? тем более, что точка/звёздочка ищет значение, которое нигде не используется. |
|
|
Rombi
|
Сообщение
#9
|
|
Как это? Разве .* не означает любой фрагмент?
-------------------- |
|
|
x64 |
10.1.2015, 18:01;
Ответить: x64
Сообщение
#10
|
|
|
а зачем это надо, можно объяснить?
каждый следующий символ анализируется, подходит ли он под мета "точка", или нет. лишняя ненужная нагрузка. если б хоть карманы использовали (ну там переназывать картинку по имени новости), так нет же этого.
|
|
|
||
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последний ответ | |
---|---|---|---|---|---|
Обучение Email Рассылкам + Софт Для Автоматизации (100к в сутки с сервера) | 9 | zennoboss | 4584 | Вчера, 21:03 автор: 100ftd |
|
Посоветуйте массажер для спины и шеи | 9 | Boymaster | 868 | Вчера, 13:56 автор: Vmir |
|
Какой % отказов нормален для сайта? | 14 | Aloof | 3373 | Вчера, 13:50 автор: Vmir |
|
Люблю творить! Статьи для вас Копирайтинг- моя жизнь! |
312 | Zoya83 | 190679 | Вчера, 7:51 автор: DimonX |
|
Современный сервис для быстрого и безопасного обмена валют. | 15 | CryptoTims | 4951 | 22.4.2024, 22:32 автор: CryptoTims |
Текстовая версия | Сейчас: 24.4.2024, 3:48 |