Il metodo split() di JavaScript

Il metodo split() in JavaScript mi permette di dividere una stringa in un array di sottostringhe.

stringa.split(x)

E' un metodo che posso richiamare dagli oggetti di tipo String.

Dove "x" è il carattere che voglio usare come separatore, per spezzare la stringa in più parti. Posso specificare qualsiasi separatore, anche una sequenza di caratteri.

Il metodo restituisce un array con le sottostringhe.

Nota. Il carattere separatore non è mai incluso nelle sottostringhe. Inoltre, se non specifico un separatore, Javascript considera l'intera stringa come un singolo elemento dell'array.

Un esempio pratico

Considero questa stringa

var str = "Ciao, come stai?";

Divido la stringa usando lo spazio come carattere separatore

var array = str.split(" ");

In questo esempio, la stringa str viene divisa ogni volta che viene trovato uno spazio (" ").

Alla fine Javascript mi restituisce un array composto da tre elementi

console.log(array);

["Ciao,", "come", "stai?"]

Volendo posso anche specificare un numero massimo di divisioni da eseguire.

var array = str.split(" ", 2);

In questo caso Javascript divide la stringa al massimo in due sottostringhe, nonostante ci siano più spazi nella stringa.

console.log(array);

["Ciao,", "come"]

Ovviamente posso anche indicare un carattere separatore diverso dallo spazio.

var array = str.split(",");

In questo esempio Javascript utilizza la virgola "," come carattere separatore.

Quindi, restituisce un array con due elementi

console.log(array);

["Ciao", "come stai?"]

Infine, se utilizzo il metodo split("") con una stringa vuota come separatore, ottengo un array di singoli caratteri:

var str = "Ciao";
var array = str.split("");

Javascript restituisce un array in cui ogni elemento è un singolo carattere della stringa.

console.log(array);

["C", "i", "a", "o"]

Il metodo split con le espressioni regolari

Il metodo split funziona anche utilizzando le espressioni regolari

Ad esempio, definisco una stringa composta da un elenco di frutti e i relativi prezzi.

var myString = "mele, 1.29, banane, 1.50, pere, 1.25, arance, 0.75";

Per estrarre solo il contenuto testuale definisco un'espressione regolare nella variabile "theRegExp"

var theRegExp = /[^a-z]+/i;

A questo punto utilizzo il metodo split per separare la stringa sulla base dell'espressione regolare.

var myArray = myString.split(theRegExp);

Nella variabile myArray viene memorizzato un array con le varie parti della stringa.

document.write(myArray.join("<br />"));

Il contenuto in output è la lista dei frutti

mele
banane
pere
arance

E così via

 


 

Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

FacebookTwitterLinkedinLinkedin
knowledge base

Le stringhe in Javascript

I metodi delle stringhe