如何在字符串中的第二个字符之后添加一个字符?
例如:我希望这个 :1700
变成这个 : 17:00
。
在我看来,最简单的方法是使用 substr 来拆分字符串并在其间连接另一个字符。无论第二部分的长度如何,这都会起作用:
var str = "1700";
str.substr(0,2)+":"+str.substr(2);
You could do this:
'1700'.match(/../g).join(':')
The following regexp accepts 3+ chars:
'700'.match(/^(.+)(..)$/).slice(1, 3).join(':') // "7:00"
Shortest and probably fastest solution:
s[0]+s[1]+":"+s[2]+s[3]
这会变魔术:
"1700".replace(/(..)$/, ":$1")
或者,您也可以在 substr 中执行类似从后面看的操作:
var string = "1700";
string = string.substr(0, string.length -2) + ":" + string.substr(-2, 2);
他们都在做类似的事情:900 到 9:00
正则表达式和 substr 行都做同样的事情。如果您想要可读性,我会考虑使用正则表达式。
不使用正则表达式,您可以使用 substr --
string = string.substr(0,2) + ":" + string.substr(2);
您可以使用子字符串。考虑以下:
string1 = "1700";
string2 = ":";
string1 = string1.substring(0,2) + string2 + string1.substring(2);
alert(string1);