Надо было найти все теги <img/> на странице и сотворил вот такое выражение:
preg_match_all('/<img[^>]*\/([0-9]{1,2})-([0-9]{1,2})[^>]*\
/>/iu',$content,$matches,PREG_SET_ORDER);
Выражение ищет тег <img/> в котором имя картинки имеет вид (число-число.расширение)
Функция выводит многомерный массив, в котором найдены искомые имена картинок. (они заданы, как подмаски).
Но при этом сначала выводится все выражение, которому соответствует мой шаблон.
Интересно то, что в этом случае выводится содержание атрибута alt! Если же он не задан, то выводится пустая строка:
Array
(
[0] => Array
(
[0] => Рисунок 15.6. Характиристики системы управления .
[1] => 15
[2] => 6
)
[1] => Array
(
[0] => Рис.15.17. Варианты систем управления.
[1] => 15
[2] => 17
)
)
То есть выводится не вся строка внутри искомого тега, а только то, что написано в его alt.
Кто-нибудь встречался с этим? Это фирменная фишка разработчиков функции preg_match?
1. webmos - 05 Ноября, 2011 - 00:51:38 - перейти к сообщению
2. LIME - 05 Ноября, 2011 - 05:28:48 - перейти к сообщению
webmos это исходник?
наверное нет
гляньте в исходник там вероятно будет весь тег картинки
наверное нет
гляньте в исходник там вероятно будет весь тег картинки
3. webmos - 05 Ноября, 2011 - 10:55:33 - перейти к сообщению
LIME пишет:
webmos это исходник?
наверное нет
гляньте в исходник там вероятно будет весь тег картинки
наверное нет
гляньте в исходник там вероятно будет весь тег картинки
Не понял - что вы имеете ввиду под исходником. Я привел точно то, что мне выдала на экран функция preg_match_all после поиска в тексте картинок.
Выводил таким макаром:
echo "<pre>";
print_r($matches);
echo "</pre>";
Первое вхождение в подмассиве (там, как я понял должно идти выдаваться полное совпадение с шаблоном) содержит содержимое атрибута alt.
вот строка в тексте:
<img alt="Рисунок 15.6. Характиристики системы управления." title="Рис.15.6" src="HydPic/15-6.gif"/>
4. LIME - 05 Ноября, 2011 - 11:00:58 - перейти к сообщению
webmos а теперь посмотрите в браузере исходный текст страницы
если не знаете как то попробуйте поискать в меню
если не найдете то пишите какой браузер
если не знаете как то попробуйте поискать в меню
если не найдете то пишите какой браузер
5. webmos - 05 Ноября, 2011 - 18:57:02 - перейти к сообщению
LIME пишет:
webmos а теперь посмотрите в браузере исходный текст страницы
если не знаете как то попробуйте поискать в меню
если не найдете то пишите какой браузер
если не знаете как то попробуйте поискать в меню
если не найдете то пишите какой браузер
Понял - про что вы. Да, в коде страницы браузера приведен весь тег целиком (все вхождение). Это, значит, браузер тег распознал и вывел только alt.
А я то подумал, что Америку открыл. Спасибо