2016-07-17 10 views
-1

3つの変数を関数に渡したい(関数は以下)。関数は "Hahaha"を "Hohoho"に置き換えるが、関数は "Hohaha"を結果として表示する。私は/ gグローバルパラメータを使用したいと思います。どうすれば関数が "Hohoho"を返すように関数を修正する必要がありますか?javascript RegExp(3つの変数を渡す)newRegexp/g

myReplace("Hahaha","a","o"); 

function myReplace(s2,removeIt,insertIt) { 
alert(s2.replace(removeIt,insertIt)); 
} 
+0

私は、なぜよく答えられ、深く説明されたものについて4つの回答が投稿されたのだろうと思います。 –

+0

@ Al.G。私はこれが重複していることを認識していなかった。あなたのコメントは私の答えの後でした。私は答えを削除しました。それを指摘してくれてありがとう。 –

+0

Fengyang Wangは次のように述べています。この質問は既存の質問の正確な複製ではありません。 – Heiko

答えて

-1

置換関数は、指定された値の文字列を検索し、指定された値が置き換えられる新しい文字列を返します。

正規表現ではなく値を置き換える場合は、値の最初のインスタンスだけが置き換えられます。すべてのオカレンスを置換するには、グローバル修飾子を使用します。

<!DOCTYPE html> 
<html> 
<body> 



<p id="demo">hahahahaha</p> 

<button onclick="myFunction()">Try it</button> 

<script> 
function myFunction() { 
    var str = document.getElementById("demo").innerHTML; 
    var res = str.replace(/ha/g, "ho"); 
    document.getElementById("demo").innerHTML = res; 
} 
</script> 

</body> 
</html> 
+0

私は "alert(myReplace(" Hahaha "、" a "、" o "))"のような関数呼び出しをしたいと思っています - "myReplace(" Hahaha "、" a "、" o "); function myReplace(s2、removeIt、insertIt){ アラート(s2replace(新しいRegExp(removeIt、 'g')、insertIt))); } ' – Heiko

+0

**これは解決策です:**' alert(myReplace( "Hahaha"、 "a"、 "o")); 'function myReplace(s2、removeIt、insertIt){' 'return s2.replace (新しいRegExp(removeIt、 'g')、insertIt); '' ' – Heiko

関連する問題