Sto provando a dividere una stringa in una matrice con la divisione che si verifica negli spazi bianchi. Ogni blocco di testo è separato da numerosi spazi (variabili).Split Variable on white space
Ecco la stringa:
NUM8 host01 1,099,849,993 1,099,849,992 1
Ho provato quanto segue senza successo.
my @array1 = split//, $VAR1;
my @array1 = split/+/, $VAR1;
my @array1 = split /\s/, $VAR1;
my @array1 = split /\s+/, $VAR1;
mi piacerebbe finire con:
$array1[0] = NUM8
$array1[1] = host01
$array1[2] = 1,099,849,993
$array1[3] = 1,099,849,992
$array1[4] = 1
Qual è il modo migliore per dividere questo?
Grazie!
L'ultima opzione dovrebbe funzionare, quindi la mia ipotesi è che devi alcune schede là dentro possibilmente. – squiguy
Quale risultato hai ottenuto dai tuoi tentativi? L'ultimo metodo che hai usato dovrebbe funzionare. – doubleDown
@squiguy: '\ s' corrisponde alle schede. Il problema è che Perl restituirà una lista con un campo iniziale di lunghezza zero se la stringa inizia con un separatore. – Borodin