替换字符串的最后一部分,javascript

Joe*_*Joe 0 javascript string ecmascript-6

const str = ".1.2.1"

const str2 = ".1";

const func = (str, str2) => {
 ...
}
Run Code Online (Sandbox Code Playgroud)

预期输出= ".1.2"

另一个例子:

str = "CABC"
str2 = "C"
Expected output "CAB"
Run Code Online (Sandbox Code Playgroud)

因此,应删除与字符串结尾匹配的字符串的最后一部分。

可以使用javascript中一些简洁的内置函数来完成此操作吗?

更新资料

更新了字符串示例。简单替换不起作用。

Tim*_*sen 5

只需尝试\.\d+$使用正则表达式替换为空字符串即可:

var input = "1.2.1";
input = input.replace(/\.\d+$/, "");
console.log(input);
Run Code Online (Sandbox Code Playgroud)

编辑:

假设要删除的输入的最后部分实际上包含在字符串变量中,那么我们可能被迫使用RegExp并手动构建模式:

var str = "CABC"
var str2 = "C"
var re = new RegExp(str2 + "$");
str = str.replace(re, "");
console.log(str);
Run Code Online (Sandbox Code Playgroud)