Надо было найти все теги <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? (Отредактировано автором: 05 Ноября, 2011 - 00:53:25)
|