ho il testoestratto multiple catturato gruppi da sed a variabili
abc <THIS> abc <THAT> abc <WHAT> abc
dove abc
è un segnaposto per un'espressione ben definita seguente. Mi piacerebbe estrarre i 3 termini tra parentesi e salvarli in 3 variabili separate. È possibile farlo senza analizzare il testo 3 volte? Fondamentalmente mi piacerebbe catturare e in qualche modo "esportare" più gruppi.
E 'chiaro che posso estrarre uno di loro in questo modo:
VARIABLE=`echo $TEXT | sed "s_abc <\(.*\)> abc <.*> abc <.*> abc_\1_g"`
Ma è possibile ottenere tutti e 3 di loro senza correre sed
3 volte?
Altre soluzioni (portatili) senza sed
sono anche benvenute.
Qual è il nome del '$ (foo)' operatore? È simile a '\' foo \ ''? – Jawap
@Jawap vedi [qui] (http://mywiki.wooledge.org/BashFAQ/082). – potong