[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Регулярное выражение
DevilX
Приветствую!

Дана строка:
<include type="module" position="top" />
Из неё нужно выдернуть названия всех атрибутов и их значения, в результате должно получиться следующее:
1.1: type
1.2: module
2.1: position
2.2: top

Что-то я всю голову сломал, думая над тем, как это сделать.
Пытался использовать такую регулярку:
~<include ((\w+)="(\w+)" )+/>~
но в итоге я получаю только последний атрибут.

Надеюсь на вашу помощь. Заранее спасибо!
SerginhoLD
используй DOMDocument

_____________
"internet explorer всех правильней отображает страницы" ©
netruxa
попробуй
preg_match_all("/(\w+)=\"(\w+)\"/",$text,$array);


_____________
ввв.парсер.рф - онлайн система проверки позиций Вашего сайта в поисковиках. Для форумчан 100 рублей на счет.
DevilX
Я сделал таким образом:
echo preg_replace_callback('~<include (.*)/>~',
function ($matches) {
preg_match_all('~(\w+)="(\w+)"~', $matches[1], $match);
$res = array_combine($match[1], $match[2]);
//
// $res ассоциативный массив, который содержит в себе следующее:
// Array
// (
// [type] => module
// [position] => top
// )
//

}, $content);
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.