Regexp: правильно выковырять свойства у тега form

ar2r

Guest
Regexp: правильно выковырять свойства у тега form

Помогите плиз составить регексп правильный, чтоб получить все свойства у тега <form>
Сами формы я уже вырезал

preg_match_all("/<form([^>]*?)>(.*?)<\/form>/",$submpage,$forms,PREG_SET_ORDER);

т.е. теперь у меня в $forms[$i][1] лежат свойства формы одной строкой (кстати, правилен ли верхний регексп). И как дальше их "распаковать" в массив?
Сенькс.
 

ar2r

Guest
ВО! Нашел!

preg_match_all('/(\w+)\s*=\s*(?:(?:"([^"]*)")|([^\s]+))/',$forms[$i][1] ,$properties,PREG_SET_ORDER);

Справится даже с таким ужасом, как:

Method=POST
name = " calam bur "
onSubmit= " method='GET'; alert(method); return true;"
action="http://www.url-url.com/haha.php" onReset=alert("Hren''Vam!");

Плохо только, что значения свойств иногда попадают в $2 а иногда в $3. Но это не уже так страшно.

Прокомментируйте, плиз, нигде не ошибся я?
 

KR

alive in new life
Воспользуйся парсером от Антонио. он тебе что хочешь расковыряет и притом верно.
http://anton.concord.ru/
 
Сверху