Come faccio a estrarre i dati tra parentesi quadre che compaiono più volte in una linea utilizzando Perl?
-
11-10-2019 - |
Domanda
Ho una linea che containes istanze multiple di dati tra parentesi quadre.
[data 1] junk [data 2] junk,junk [data 3] junk [data 4]
Se uno ha una regex goo? Così posso usare
print $1,$2,$3,$4;
Grazie!
Soluzione
my $s = "[data 1] junk [data 2] junk,junk [data 3] junk [data 4]";
my ($one, $two, $three, $four) = $s =~ /\[([^\]]*)\]/g;
print $one, $two, $three, $four;
Altri suggerimenti
Text :: Balanced invece di una regex.
Se tutti la vostra ricerca di un breve stampa, questo dovrebbe farlo ..
$s = q( [data 1] junk [data 2] junk,junk [data 3] junk [data 4] );
print join(', ', @{[$s =~ /\[(.*?)\]/g]}), "\n";
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow