Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: Выбрать часть строки  (Прочитано 879 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн VlaoMao

  • Автор темы
  • Активист
  • *
  • Сообщений: 308
  • ArchLinux - eMachines e725 && Nokia N950
    • Просмотр профиля
Выбрать часть строки
« : 16 Марта 2012, 20:41:56 »
Привет всем. Есть некое количество строк, вот пример:
                <A class=black title="Перейти к книге" href="http://lib.aldebaran.ru/author/bryedberi_ryei/bryedberi_ryei_veter/">Ветер</A>
                <A class=black title="Перейти к книге" href="http://lib.aldebaran.ru/author/bryedberi_ryei/bryedberi_ryei_veter_iz_gettisberga/">Ветер из Геттисберга</A>
                <A class=black title="Перейти к книге" href="http://lib.aldebaran.ru/author/bryedberi_ryei/bryedberi_ryei_voronya_staya/">Воронья стая</A>
                <A class=black title="Перейти к книге" href="http://lib.aldebaran.ru/author/bryedberi_ryei/bryedberi_ryei_vysshee_iz_blazhenstv/">Высшее из блаженств</A>
Собственно, нужно выбрать только ссылку с http. Никто не подскажет, чем можно выбрать? Пытаюсь сделать с sed, но что-то плоховато выходит.
Заранее спасибо.

Оффлайн andrew_bye

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 2698
    • Просмотр профиля
Re: Выбрать часть строки
« Ответ #1 : 16 Марта 2012, 20:54:17 »
Это весь документ или только его часть?

Оффлайн VlaoMao

  • Автор темы
  • Активист
  • *
  • Сообщений: 308
  • ArchLinux - eMachines e725 && Nokia N950
    • Просмотр профиля
Re: Выбрать часть строки
« Ответ #2 : 16 Марта 2012, 21:03:59 »
Часть, но все ссылки подобны этим, различие только в URL и в тексте. Нужен только сам URL.

Оффлайн andrew_bye

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 2698
    • Просмотр профиля
Re: Выбрать часть строки
« Ответ #3 : 16 Марта 2012, 21:10:55 »
Дело в том, что это XML-файл и информацию из него удобнее извлекать с помощью XML-парсера, а не регулярных выражений.

П.С. В общем если скинешь весь файл, то я смогу накидать элементарный скрипт на Перл, который будет извлекать требуемую информацию.
« Последнее редактирование: 16 Марта 2012, 21:40:39 от andrew_bye »

Оффлайн VlaoMao

  • Автор темы
  • Активист
  • *
  • Сообщений: 308
  • ArchLinux - eMachines e725 && Nokia N950
    • Просмотр профиля
Re: Выбрать часть строки
« Ответ #4 : 16 Марта 2012, 21:46:03 »
Не, не надою. Сам наверное лучше разберусь. Тем более новые идеи появились. Спасибо :)

Оффлайн andrew_bye

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 2698
    • Просмотр профиля
Re: Выбрать часть строки
« Ответ #5 : 16 Марта 2012, 21:51:48 »
Как знаешь. Если что, то рекомендую воспользоваться перловским модулем XML::Twig.

andrey_p

  • Гость
Re: Выбрать часть строки
« Ответ #6 : 17 Марта 2012, 12:04:31 »
grep -o 'http:/[^"]*' FILE(s)

Оффлайн VlaoMao

  • Автор темы
  • Активист
  • *
  • Сообщений: 308
  • ArchLinux - eMachines e725 && Nokia N950
    • Просмотр профиля
Re: Выбрать часть строки
« Ответ #7 : 17 Марта 2012, 13:39:21 »
grep -o 'http:/[^"]*' FILE(s)
Спасибо!

 

Страница сгенерирована за 0.09 секунд. Запросов: 25.