Я сделал это регулярное выражение, чтобы получить все атрибуты в теге «img».Как получить все атрибуты с регулярным выражением?
/<img\s+(?:([a-z_-]+)\s*=\s*"(.*?)"\s*)*\s*\/>/g
Но для этого требуется только один атрибут, который является последним.
Как я могу получить все атрибуты с регулярным выражением?
Тест Строка:
<img src="abc.png" alt="abc" />
<img alt="def" src="def.png" />
<img src="abc.png" alt="abc" style="border:none" />
<img alt="def" src="def.png" style="border:none" />
Результат: (с http://www.regex101.com)
MATCH 1
1. [19-22] `alt`
2. [24-27] `abc`
MATCH 2
1. [47-50] `src`
2. [52-59] `def.png`
MATCH 3
1. [93-98] `style`
2. [100-111] `border:none`
MATCH 4
1. [145-150] `style`
2. [152-163] `border:none`
Просто возьмите DOM парсер. – zerkms
[Не анализировать HTML с регулярным выражением!] (Http://stackoverflow.com/a/1732454/418066) – Biffen