Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Регулярные выражения, JavaScript Regular Expressions 
:(
    Опции темы
antiwindows
Дата 22.9.2015, 17:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 22.9.2015

Репутация: нет
Всего: нет



с помощью регулярных выражений надо вытащить из исходного кода название продукта. Это то что стоит в ковычках после слова title (т.е. "Leitz 24230095 Stehsammler, A4, Hartpappe, schwarz"):

<a class="a-link-normal s-access-detail-page  a-text-normal" title="Leitz 24230095 Stehsammler, A4, Hartpappe, schwarz" href="http://www.amazon.de/Leitz-24230095-Stehsammler-Hartpappe schwarz/dp/B0007OEHFS/ref=sr_1_1?ie=UTF8&amp;qid=1442901446&amp;sr=8-1&amp;keywords=Leitz+24230095"><h2 class="a-size-medium a-color-null s-inline s-access-title a-text-normal">Leitz 24230095 Stehsammler, A4, Hartpappe, schwarz</h2></a>

Примерно выражение выглядит так:
<a class=\"[^\"]*title\"(.*?)</a>
Но это выражение не работает. Помогите кто может!
PM MAIL   Вверх
igorold
Дата 23.9.2015, 06:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 557
Регистрация: 22.12.2005
Где: Россия->Урал-& gt;Миасс

Репутация: нет
Всего: 17



<a class=\".+[^\"]\"[^>]*?title=\"([^\"]*?)\"[^>]*?>

а так сработает?

Этот ответ добавлен с нового Винграда - http://vingrad.com
PM MAIL   Вверх
baldina
Дата 23.9.2015, 10:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3433
Регистрация: 5.12.2007
Где: Москва

Репутация: 2
Всего: 101



а если class будет отсутствовать или идти после?
javascript умеет манипулировать dom, это быстрее, понятнее и надежнее
Код

var a = document.getElementsByTagName("a");
for (var i in a)
  console.log(a[i].getAttribute("title"));

http://jsfiddle.net/ycsg0t0q/

Это сообщение отредактировал(а) baldina - 23.9.2015, 10:08
PM MAIL   Вверх
antiwindows
Дата 24.9.2015, 12:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 22.9.2015

Репутация: нет
Всего: нет



Цитата(igorold @ 23.9.2015,  06:19)
<a class=\".+[^\"]\"[^>]*?title=\"([^\"]*?)\"[^>]*?>

а так сработает?

Этот ответ добавлен с нового Винграда - http://vingrad.com

работает...но немножко не так как надо )))
см. картинку

Добавлено через 4 минуты и 42 секунды
baldina, 
благодарю за идею. Понадобится немного позже. Сейчас нужна именно регулярка. 

Решение найдено. Несколько регулярок, которые выдают то что нужно:
<a[^>]+title="([^"]+)"
title=\"(.+?)\"'
title=\"([^\"]+)\"

огромное спасибо всем!

Это сообщение отредактировал(а) antiwindows - 24.9.2015, 12:11

Присоединённый файл ( Кол-во скачиваний: 1 )
Присоединённый файл  result_regex.jpg 161,29 Kb
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0418 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.