在PHP中,您一次只能替換一個值。多個替換爲javascript
<?php
$string = "i am the foobar";
$newstring = str_replace(array('i', 'the'), array('you', 'a'), $string);
echo $newstring;
?>
你如何在JavaScript中做到這一點?
在PHP中,您一次只能替換一個值。多個替換爲javascript
<?php
$string = "i am the foobar";
$newstring = str_replace(array('i', 'the'), array('you', 'a'), $string);
echo $newstring;
?>
你如何在JavaScript中做到這一點?
使用javascript的.replace()
方法,將多個替換串起來。即:
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"
非常好,我正在尋找...我是處理動態字符串,所以我最終看起來像var exp = new RegExp(foo,'g'); somestring.replace(exp,'bar'); – afreeland 2014-12-09 14:13:17
非常好的解決方案。 – 2016-07-15 15:44:18
你可以這樣做:
var string = "jak har en mamma";
string = string.replace(/(jak)|(mamma)/g,function(str,p1,p2) {
if(p1) return 'du';
if(p2) return 'pappa';
});
或:
var string = "jak har en mamma";
string = string.replace(/jak/g,'du').replace(/mamma/g,'pappa');
有在#2另一個問題更好的答案。在我看來,最好的答案是[這裏](http://stackoverflow.com/questions/15604140/replace-multiple-strings-with-multiple-other-strings) – CodeChops 2016-03-29 11:07:38