2015-05-23 7 views
5

Ho una stringa che contiene numeri e caratteri. Voglio sostituire i numeri con un altro valore che gli darà una classe css di someClass.sostituzione di numeri in una stringa con espressioni regolari in javascript

Ora ho ottenuto il codice per rilevare tutti i numeri nella stringa e sostituirlo con qualcos'altro.

La mia domanda è come ottengo il numero corrente corrisponde e lo metto alla nuova stringa o valore che sostituirà quello originale?

Fondamentalmente quello che voglio che accada è:

per esempio, ho questa stringa: 1dog3cat, voglio che vengono sostituiti con <span class="someClass">1</span>dog<span class="someClass">3</span>cat

Ecco il mio codice corrente:

var string_variable; 
    string_variable = "1FOO5,200BAR"; 
    string_variable = string_variable.replace(/(?:\d*\.)?\d+/g, "<span class='someClass'>" + string_variable + "</span>"); 
    alert(string_variable); 

risposta

6

Ricorda semplicemente il pattern abbinato usando le parentesi e recupera quel valore usando $1 e aggiungi il tag span ad esso.

Utilizzare questa regex

string_variable = string_variable.replace(/(\d+)/g, "<span class='someClass'>$1</span>"); 

Vedere DEMO

+1

usato questa risposta. grazie @Ankit, andando ad accettare questa risposta. :) –