/ / regex replace javascript return intero value - javascript, regex

regex replace javascript return intero valore - javascript, regex

Non so perché, ma il mio regex non funziona ...

$a = "_test[value][0]";
$b = $a.replace("/val/g","_");

Sto anche cercando di fare qualcosa di un po 'complesso come:

$b = $a.replace("/[(.*)]/g","_");

Qualche idea?

risposte:

1 per risposta № 1

Rimuovi le virgolette dalla regex:

$b = $a.replace(/val/g, "_");

1 per risposta № 2

Le espressioni regolari non hanno bisogno di virgolette $b = $a.replace(/val/g,"_");

L'unica volta che hai usato le virgolette è sostituire il testo con jQuery.replace();

per esempio: $b = $a.replace("replace this","with this");

(presumendo che il tuo codice sia jQuery basato sull'uso di $)


0 per risposta № 3

Ci sono due modi per creare il Oggetto Regexp stai cercando di usare:

  • Da una stringa:

    var regexp = new Regexp("val", "g");
    
  • Usando un letterale Regexp:

    var regexp = /val/g;
    

Si noti che il letterale Regexp non ha virgolette, quindi quando lo si usa "/val/g" come sostituto non stai usando le espressioni regolari, starai cercando di sostituire quella stringa letterale.

Quindi devi solo lasciare le virgolette:

$b = $a.replace(/val/g, "_");