Replace multipli in Javascript

Corso jQuery
Creare applicazioni client-side col Framework jQuery

Scritto da Luca Ruggiero nella sezione Javascript

Lavorando con le stringhe in Javascript capita spesso di avere la necessitÓ di sostituire caratteri o porzioni di testo: allo scopo utilizziamo il metodo replace(), come spiegato nella lezione sulla gestione delle stringhe in Javascript.

Altrettanto spesso capita di avere la necessitÓ di sostituire "in un colpo solo" pi¨ caratteri: scopriamo dunque come effettuare replace multipli in Javascript.

Per fare un esempio che abbia un senso, immaginiamo di voler - per qualche motivo - gestire i caratteri accentati con l'equivalente carattere non accentato, accompagnato dall'apostrofo.

Quindi:

Ó -> a'
Ŕ -> e'
ý -> i'
˛ -> o'
¨ -> u'

Prendiamo dunque un testo di esempio, memorizzato in una variabile:

var testo = "Questo Ŕ un esempio in cui si sostituirÓ pi¨ di un carattere!";

Il primo sistema di replace multiplo che possiamo utilizzare Ŕ il seguente:

testo = testo.replace(/Ó/g, "a'");
testo = testo.replace(/Ŕ/g, "e'");
testo = testo.replace(/ý/g, "i'");
testo = testo.replace(/˛/g, "o'");
testo = testo.replace(/¨/g, "u'");

Il secondo, Ŕ pi¨ "raccolto". Ecco il codice:

testo = testo.replace(/Ó/g, "a'").replace(/Ŕ/g, "e'").replace(/ý/g, "i'").replace(/˛/g, "o'").replace(/¨/g, "u'");

Quale che sia il sistema che decidiamo di utilizzare, non ci resta che stampare a video il testo:

document.write(testo);

E come diceva Forrest Gump, "non ho altro da dire su questa faccenda".

I pi¨ cliccati della sezione Javascript

:: jQuery Validation: validazione di un form con jQuery (102.242)

:: Breve guida a jQuery (91.570)

:: Le espressioni regolari in Javascript (83.665)

:: Gestione delle stringhe in Javascript (71.316)

:: Stampare una pagina col Dhtml (41.898)

:: Menu orizzontale dinamico in Dhtml (36.148)

:: Inserire in automatico lo slash nel formato data gg/mm/aaaa (35.972)

:: Gli Array in Javascript (34.971)

:: Temporizzazioni Javascript (30.269)

:: DOM: rendere cross-browser il comando innerHTML (27.634)

IN EVIDENZA
DOWNLOAD