Я пытаюсь извлечь атрибуты тега привязки (<a>
). Пока у меня есть это выражение:
(?<name>\b\w+\b)\s*=\s*("(?<value>[^"]*)"|'(?<value>[^']*)'|(?<value>[^"'<> \s]+)\s*)+
который работает для таких строк, как
<a href="test.html" class="xyz">
и (одинарные кавычки)
<a href='test.html' class="xyz">
но не для строки без кавычек:
<a href=test.html class=xyz>
Как я могу изменить свое регулярное выражение, чтобы оно работало с атрибутами без кавычек? Или есть лучший способ сделать это?
Обновление: Спасибо за все хорошие комментарии и советы до сих пор. Есть одна вещь, о которой я не упомянул: мне, к сожалению, приходится исправлять/изменять код, написанный не мной. И нет времени/денег, чтобы переписать этот материал снизу вверх.