Приветствую!
Пытаюсь разобрать html тег (строку текста, похожую на html тег) на составные части.
Пример тега:
<div class="test" data-status="false">
Мое регулярное выражение:
<([a-z]+)(?:\s*)(?:(class)="(.*?)")(?:\s*)(?:(data-.*)="(.*?)").*>
Вопросы:
1. Учитывая, что все идет по шаблону (например атрибуты id|class|data-), то как лучше оптимизировать|улучшить регулярное выражение? Возможно 2 раза "искать, но не запоминать пробел" не нужно...
2. Имеется ли возможность помещать содержимое атрибутов сразу в дополнительный массив, который следует сразу за родительским атрибутом? Например было:
{'class', 'vasya petya'}
, стало:
{'class': {vasya petya}}
. На настоящий момент, произвожу данную операцию в дополнительном цикле.
Спасибо!
UPD: это не html тег, а строка текста похожая на него. Изучаю регулярные выражения и для примера взял подобного рода задачу. То, что для парсинга html лучше использовать другие инструменты - вкурсе.