替换字符串中的单词

时间:2016-09-01 23:51:37

标签: javascript

我想用另一个单词替换字符串中的单词但代码不起作用。

注意:更换原始单词时请保留原始单词的大小写。例如,如果您的意思是将“Book”替换为“dog”,则应将其替换为“Dog”

代码有什么问题?

function replace(str, before, after) {  

    // Find index where before is on string
    var index = str.indexOf(before);
    var dogru = before[0] === before[0].toUpperCase();
    var yanlıs = after[0] === after[0].toUpperCase();

    // Check to see if the first letter is uppercase or not
    if (dogru !== yanlıs) {
        if(dogru)
            after = after.charAt(0).toUpperCase() + after.slice(1);
        else
            after = after.charAt(0).toLowerCase() + after.slice(1);
    }

    // Now replace the original str with the edited one.
    var str1 = str.split(' ');

    str1.splice(str1.indexOf(before),1, after);

    return str1.join(' ');
}

myReplace("A quick brown fox jumped over the lazy dog", "jumped", "leaped");

3 个答案:

答案 0 :(得分:2)

你让我的朋友过分复杂化了。只需使用replace()http://www.w3schools.com/jsref/jsref_replace.asp

即可

答案 1 :(得分:0)

除了您定义的函数名称为myReplace

时调用函数replace的事实以外,所有工作都很棒

答案 2 :(得分:0)

您可以使用如下所示的replace()方法:

“快速的棕色狐狸跳过懒狗”.replace(“跳跃”,“跳跃”);

解释here