如何替换特定位置的字符串

Har*_*ish 12 javascript string replace substring

有没有办法在java脚本中替换给定位置的String的一部分.例如,我想00在小时栏中用12下面的字符串替换.substring来自13到15.

Mar 16, 2010 00:00 AM 
Run Code Online (Sandbox Code Playgroud)

Dan*_*llo 22

以下是一个选项:

var myString = "Mar 16, 2010 00:00 AM";

myString = myString.substring(0, 13) + 
           "12" + 
           myString.substring(15, myString.length);
Run Code Online (Sandbox Code Playgroud)

请注意,如果您打算使用它来操作日期,建议使用一些日期操作方法,例如DateJS中的日期操作方法.

  • 一种稍微快一点的方法:对于字符串的第二部分,使用`myString.substr(15)` - 这将从位置"15"到字符串结尾获取字符串. (3认同)

YOU*_*YOU 6

正则表达式方法

"Mar 16, 2010 00:00 AM".replace(/(.{13}).{2}/,"$112")
Mar 16, 2010 12:00 AM
Run Code Online (Sandbox Code Playgroud)

  • 我喜欢这种方法,但是如果有人担心性能,可以进行测试比较:http://jsperf.com/substring-replace (2认同)