@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"
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы