Perl: Come utilizzare una variabile in una funzione Split

April 13

La funzione Perl "split" prende una stringa e si rompe in su in una matrice a punti che si specifica con un "delimitatore", o "modello". Spesso è necessario utilizzarla senza conoscere la stringa in anticipo. In questi casi è possibile ottenere la stringa di dividere, e il delimitatore, in fase di esecuzione, salvarli in variabili e quindi utilizzare tali variabili nella funzione split. Quando si utilizza una stringa come un delimitatore nella funzione split, è possibile utilizzare un carattere da solo, come ad esempio una virgola o uno spazio bianco, oppure è possibile utilizzare un elenco che contiene più caratteri.

istruzione

1 Aprire un file di programma Perl. Digitare il seguente codice:

$ Numeri = 'Uno, due, tre, quattro';

$ Delimitatore = ',';

La prima riga crea una variabile stringa che si desidera separare utilizzando la funzione split. La seconda riga crea una variabile da utilizzare come delimitatore, che è il carattere jolly che la funzione cerca di rompere la stringa con.

2 Digitare il seguente codice:

@numbers = split ($ delimitatore, $ numeri);

Questa linea chiama la funzione split. La funzione si chiama i valori delle due variabili e quindi memorizza l'output risultante nella matrice @numbers, che ha una struttura con quattro elementi: "One", "Two", "Three" e "Quattro". È possibile chiamare qualsiasi di questi valori individualmente ora accedendo al indice di matrice associata.

3 Digitare il seguente codice:

@numbers = split ($ delimitatore, $ numeri, 3);

Questa chiamata alla funzione split dice che che si desidera un array con spazio per un massimo di tre elementi. Quando la funzione divide la variabile due volte, memorizza semplicemente il resto della variabile nel terzo punto indice. I valori di matrice per @numbers dopo questa chiamata di funzione sono "One", "Two" e poi "Tre, Quattro" nel punto finale.

4 Digitare il seguente codice:

$ Frase = 'Ciao! Domanda: cosa, ora, sa come usare questo; la funzione split? ';

$ Delimitatore = "[:!?,;]";

@result = split ($ delimitatore, $ frase);

La prima riga crea una nuova variabile stringa con una frase con un sacco di punteggiatura in esso. La seconda riga crea un delimitatore che contiene un elenco di punteggiatura. La funzione split prende queste variabili e in realtà divide la frase ad ogni occorrenza di un segno di punteggiatura, la rimozione della punteggiatura e memorizzare l'uscita nella matrice @result. La stampa @result produce la stessa frase nella variabile $ frase, tranne senza segni di punteggiatura.

5 Salvare il file di programma Perl ed eseguirlo.

Consigli e avvertenze

  • Un delimitatore può essere qualsiasi stringa che si desidera, ad esempio una virgola, due punti, o anche i caratteri dell'alfabeto. Per esempio, se il valore della vostra variabile stringa è "Ciao, mondo!" e il delimitatore è una minuscola "L", l'uscita di matrice dopo aver utilizzato la funzione split sarebbe "Heo, parola!"
  • Quando si utilizza la funzione split, la stringa si desidera dividere bisogno di avere il delimitatore in esso, altrimenti la funzione restituirà la stessa stringa si dà.