@kiri_30

Как регуляркой вытащить все значения?

Для примера:
select id='name' method='out'

   option value='1'

   option value='2'

   option value='3'


Как регуляркой вытащить все значения option value (1, 2, 3) у конкретного select id.
Просто вытащить все значения option value легко, а вот как это сделать у конкретного select id не могу сообразить.
Пытался вот так но такая регулярка в скобочную группу запоминает только последнее значение (3)
  • Вопрос задан
  • 174 просмотра
Пригласить эксперта
Ответы на вопрос 1
Не знаю устроит или нет, но можно так
#!/bin/bash
echo "select id='name1' method='out1'
option value='10'

option value='20'

option value='30'

select id='name2' method='out2'

option value='11'

option value='22'

option value='33'

select id='name3' method='out3'

option value='100'

option value='200'

option value='300'" | sed -rn "/select id='name2'/,/select/ s/option value='(.+)'/\1/p"
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
Wanted. Санкт-Петербург
До 450 000 ₽
Wanted. Санкт-Петербург
До 120 000 ₽
Wanted. Санкт-Петербург
До 100 000 ₽
24 нояб. 2024, в 14:37
3000 руб./в час
24 нояб. 2024, в 13:04
500 руб./в час
24 нояб. 2024, в 12:29
3000 руб./за проект