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


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: Perl. Эффектив. способ найти и загрузить в массив все подстроки одной строки  (Прочитано 582 раз)

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

Оффлайн ReNzRv

  • Автор темы
  • Старожил
  • *
  • Сообщений: 2648
    • Просмотр профиля
Всем прив и с наступающим!
Для примера:
В переменой P загружен код веб страницы.
В массив R нужно записать все подстроки из переменой P:
Код: (text) [Выделить]
<small class="forecast-detailed__weekday">.*?<\/dd>(куски страницы)
Как это проще и эффективнее сделать?
И можно ли функции grep передать одну строку, а чтобы она вернула в массив множество подстрок?

Пока придумал такое решение:
Код: (perl) [Выделить]
while ($P =~ /(<small class="forecast-detailed__weekday">.*?<\/dd>)/) {
push @R, $1;
$P =~ s/<small class="forecast-detailed__weekday">.*?<\/dd>//;
}


Пользователь добавил сообщение 28 Декабря 2016, 10:14:46:
Все, нашел:
Код: (perl) [Выделить]
@R = ($P =~ /<small class="forecast-detailed__weekday">.*?<\/dd>/g);
« Последнее редактирование: 28 Декабря 2016, 14:15:18 от renzrv »

 

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