-3

文字列内の単語を交換したいだけです。次のことを考慮してください。

var str = "this is a test string";

テストを文字列に置き換え、文字列をテストに置き換えて、出力が

"this is a string test"

実際のコード:

<html>
<title> Swappping Words </title>
<body>
    <script type="text/javascript">
        var o_name = prompt("Enter the String", "");
        var replace1 = prompt("Enter the first word to replace ", "");
        var r1 = prompt("replacing word of 1", "")
        var replace2 = prompt("Enter the second word to replace ", "");
        var r2 = prompt("replacing word of 2", "")
        var n_name1 = o_name.replace(replace1, r1).replace(replace2, r2);
        document.writeln("Old string = " +o_name);
        document.writeln("New string = " +n_name1);
    </script>  
</body>

私は基本を学んでいます、誰かがこれを行う方法を私に説明できますか?

4

2 に答える 2

9

直面する主な問題は、一度に両方の置換を行わないと、最初の置換が 2 番目の置換で上書きされる危険性があることです。

これを試して:

var result = str.replace(/test|string/g,function(m) {
    switch(m) {
        case "test": return "string";
        case "string": return "test";
    }
});
于 2013-10-21T15:32:23.913 に答える