Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Помогите с регулярным выражением. SOS

422
08 июля 2006 года
Dimarik
181 / / 12.02.2005
Необходимо в HTML-файле найти все конструкции типа (в общем случае)

<a class="styl" href="ya.ru" title="Yandex">Reference<img src="1.jpg"></a>

Т.е. необходимо найти все ссылки.

Вот делаю так:

<a.*?href=\".*?\"[^>]+>.+?(</a>)

Находится всякая бредятина типа

<a href="/klientam/statistika">Статистика</a></td>
</tr>
<tr>
<td class="menu-entry-level-2"> <a href="/klientam/fajlovyj_arhi
v">Файловый архив</a>

Help me! Я скоро себе голову сломаю.
16K
08 июля 2006 года
WorM
33 / / 11.06.2006
<a [^<]*>.*?<\/a>
422
08 июля 2006 года
Dimarik
181 / / 12.02.2005
Вообще ничего не находит.
16K
08 июля 2006 года
WorM
33 / / 11.06.2006
полный пример
 
Код:
if (preg_match_all("/<a [^<]*>.*?<\/a>/is",$str,$match)) {
    // $match[0] - массив всех найденных ссылок в $str
} else {
    // ничего не найдено
}
422
08 июля 2006 года
Dimarik
181 / / 12.02.2005
[QUOTE=WorM]полный пример
 
Код:
if (preg_match_all("/<a [^<]*>.*?<\/a>/is",$str,$match)) {
    // $match[0] - массив всех найденных ссылок в $str
} else {
    // ничего не найдено
}
[/QUOTE]

Так это получается тоже самое, только без учёта href=\".*?\"
422
08 июля 2006 года
Dimarik
181 / / 12.02.2005
Можно как-нибудь в регулярном выражении сделать отрицание на целую строку. Например

^(stroka)

Так делаю, но ничего не работает.
8
08 июля 2006 года
mfender
3.5K / / 15.06.2005
А ещё проще - domxml. Там все узлы найти гораздо проще.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог