web-dev-qa-db-fra.com

plusieurs remplacements par javascript

En PHP, vous faites cela pour remplacer plus d'une valeur à la fois.

<?php
$string = "i am the foobar";

$newstring = str_replace(array('i', 'the'), array('you', 'a'), $string);

echo $newstring;
?>

Comment faites-vous cela en javascript?

27
Marwelln

Utilisez la méthode .replace() de javascript, en enchaînant plusieurs remplacements. c'est à dire:

var somestring = "foo is an awesome foo bar foo foo"; //somestring lowercase
var replaced = somestring.replace(/foo/g, "bar").replace(/is/g, "or");
// replaced now contains: "bar or an awesome bar bar bar bar"
67
Alex

Vous pourriez faire:

http://jsfiddle.net/ugKRr/

var string = "jak har en mamma";

string = string.replace(/(jak)|(mamma)/g,function(str,p1,p2) {
        if(p1) return 'du';
        if(p2) return 'pappa';
    });

ou:

http://jsfiddle.net/ugKRr/2/

var string = "jak har en mamma";

string = string.replace(/jak/g,'du').replace(/mamma/g,'pappa');
14
user113716