C'è un modo per farlo senza ottenere un ciclo infinito?Loop infinito in perl
while((my $var) = $string =~ /regexline(.+?)end/g) {
print $var;
}
Questo si traduce in un ciclo infinito, probabilmente perché l'assegnazione di un var direttamente da una regex all'interno mentre restituisce "true" ogni volta?
So che posso fare questo:
while($string =~ /regexline(.+?)end/g) {
my $var = $1;
print $var;
}
ma speravo ho potuto risparmiare una linea. C'è un modificatore regex che posso usare o qualcosa del genere?
(Inoltre, qual è questa notazione/trucco in realtà chiamati, se voglio cercarlo:
(my $var) = $string =~ /regex/;
Grazie !!
Tieni presente che 'foreach' carica l'intero set di risultati in memoria invece di scorrere su di esso come' while' fa. – hhaamu