повторяющие границы вопрос

Тема в разделе "Решение различных задач по парсингу", создана пользователем enbond, 19 янв 2014.

  1. enbond

    enbond New Member Пользователи

    Регистрация:
    9 июн 2013
    Сообщения:
    14
    Здравствуйте! Подскажите пожалуйста, можно ли реализовать такое.
    С помощью повторяющихся границ парсится список. Из этого списка мне нужно взять только третье значение и потом наоборот все кроме третьего значения. Как такое реализовать?
     
  2. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Здравствуйте, применять поиск-замену (макрос шаблона вывода REPLACE) к повторяющимся границам парсинга. Ссылки недоступны для гостей
    Придумать вам конкретное решение не могу, так как задачу вы предоставили абстрактную, соответственно и ответ абстрактный (а следует приложить файл проекта или объяснить детали, просто непонятно что и как там у вас). Придумать способ поиск-замены можно самостоятельно, изучив Ссылки недоступны для гостей и логически подумав...
    Спасибо за обращение!
     
  3. enbond

    enbond New Member Пользователи

    Регистрация:
    9 июн 2013
    Сообщения:
    14
    Root, спасибо за совет, но кажется это не то что мне нужно или же я не до конца понимаю :(
    Ситуация такая, через повторяющиеся границы парсятся категории товара. Но на сайте донора они не в том порядке, который нужен...
    Парсится например так:
    Главная, Телевизоры, LG, 32 дюйма
    Главная, Телевизоры, Samsung, 32 дюйма
    Главная, телевизоры, Philips, 32 дюйма
    и т.д.
    Как бы логичнее порядок категорий поменять на такой:
    Главная, Телевизоры, 32 дюйма, LG
    Главная, Телевизоры, 32 дюйма, Samsung
    Главная, телевизоры, 32 дюйма, Philips
    Или же совсем удалить название брендов.

    Если через функцию замены, я так понимаю нужно перечислить все названия брендов и менять их на пустоту, но проблема в том, что их несколько сотен :(

    И еще вопрос, я поставил разделять повторяющиеся границы парсинга запятой (,), все отлично, но получается так:
    Значение 1, Значение 2, Значение 3,
    можно ли убрать запятую после последнего значения?
     
  4. Freesty1er

    Freesty1er New Member Пользователи

    Регистрация:
    30 дек 2013
    Сообщения:
    95
    enbond, возможно регуляркой можно, но они везде разные.. В этой программе регулярки многострочные, с ними сложно, так что не знаю точно.
    ^.*?,.*?,(.*?,)
    Можно попробовать заменять этой все бренды на ничего.

    Но лучше, наверное, через "Ссылки недоступны для гостей"
    Т.е. парсим [GRAN1] "Главная, Телевизоры", потом [GRAN2] "LG", потом [GRAN3] "32 дюйма". А в шаблон вывода поставляем наоборот: [GRAN1], [GRAN3], [GRAN2]

    Так же, как вариант, использовать разделитель ни "," а разделитель ячеек [CSVCS]. И потом уже через таблицу поменять местами столбики.
    У меня выводит без последней запятой.
    Сюда вводили?: Ссылки недоступны для гостей
     
    Последнее редактирование: 21 янв 2014
  5. kagorec

    kagorec Администратор Команда форума Администратор

    Регистрация:
    3 янв 2011
    Сообщения:
    4.442
    Адрес:
    Latvia
    Как ариант обычной границей взять весь список категорий. (пример на скрине)

    [​IMG]

    В дополнительные настройки с помощью замены:
     
  6. enbond

    enbond New Member Пользователи

    Регистрация:
    9 июн 2013
    Сообщения:
    14
    Большое спасибо, осуществил по вашему методу :)

    Да, сюда. Странно, ну да ладно не критично.
     

Поделиться этой страницей