Javascript:删除连字符
所以我一直在研究这个函数,但我不知道如何删除字符串末尾的剩余连字符Javascript:删除连字符,javascript,Javascript,所以我一直在研究这个函数,但我不知道如何删除字符串末尾的剩余连字符 function solution(s) { var l = s.length, max = l - (l % 3 ? ((l + 1) % 3 ? 4 : 2) : 0); var result = ""; for(var i = 0; i < max; i+=3) { result += s.replace(/[^0-9]/gi, '').slice(i, i + 3) + "-"; }
function solution(s) {
var l = s.length,
max = l - (l % 3 ? ((l + 1) % 3 ? 4 : 2) : 0);
var result = "";
for(var i = 0; i < max; i+=3) {
result += s.replace(/[^0-9]/gi, '').slice(i, i + 3) + "-";
}
for(var i = max; i < l; i+=2) {
result += s.replace(/[^0-9]/gi, '').slice(i, i + 2) + "-";
}
return result.slice(0,-1);
}
console.log(solution("0 - 22 1985--324"));
console.log(solution("555372654"));
函数解决方案{
var l=s.长度,
最大值=l-(l%3?((l+1)%3?4:2):0);
var结果=”;
对于(变量i=0;i
我知道“result.slice(0,-1)”应该已经解决了这个问题,但它只是在末尾删除了一个连字符。预期的输出是什么?您可以添加一个简单的
输入:
-预期的输出:
示例吗?不太清楚您试图执行的操作。您可以使用正则表达式执行该操作:result.replace(/\-$/,“”)
Input:0-22 1985--324预期输出:022-198-532-4
return /.*[^-]/.exec(result)[0]