在特定索引处使用.replace()

Joe*_*mas 12 javascript algorithm jquery

是否有一个函数可以在特定索引处替换字符串中的字符串一次?例:

var string1="my text is my text";
var string2="my";
string1.replaceAt(string2,"your",10);
Run Code Online (Sandbox Code Playgroud)

结果输出将是"我的文字是你的文字",或者:

var string1="my text is my text";
var string2="my";
string1.replaceAt(string2,"your",0);
Run Code Online (Sandbox Code Playgroud)

在这种情况下,结果将是"你的文字是我的文字".

Ale*_*lex 6

function ReplaceAt(input, search, replace, start, end) {
    return input.slice(0, start)
        + input.slice(start, end).replace(search, replace)
        + input.slice(end);
}
Run Code Online (Sandbox Code Playgroud)

jsfiddle 在这里

PS.修改代码以添加空检查,边界检查等.


Kne*_*tic 0

从“相关问题”栏中,这个旧答案似乎适用于您的情况。替换单个字符(在我引用的问题中)与替换字符串没有太大区别。

如何在 JavaScript 中替换特定索引处的字符?