Здравствуйте!
Есть составленное регулярное выражение для нахождения в HTML пути к favicon.ico. Но оказалось что у многих сайтов, нужная мне строка, разная.
Текущее регулярное выражение:
| Код | (?i)<link rel="shortcut icon" (href)=(")(.+?)(\2)(.*?)>
|
Немного иследовав пару сайтов пришел к выводу что нужно:
когда в "rel=" может быть и "shortcut icon" и просто "icon":
| Код | <link rel="SHORTCUT ICON" href="/favicon.ico" />
<link rel="icon" href="http://www.avangate.com/favicon.ico" type="image/x-icon"/>
|
когда "rel=" и "href=" могут быть перемещены местами:
| Код | <link href="favicon.ico" rel="shortcut icon">
|
А также когда между ними находится лишний, для меня текст:
| Код | <link rel="shortcut icon" type="image/ico" href="/images/favicon.ico" />
|
А также не реагировать если иконка не ".ico":
| Код | <link rel="shortcut icon" type="image/ico" href="/images/favicon.gif" />
|
И на последок, если иконка не называется "favicon.ico":
| Код | <link rel="shortcut icon" href="/images/plimus_wave.ico" />
|
Такое возможно? Я не до конца еще разобрался с регулярными выражениями. |