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

时间:2010-02-10 11:01:36

标签: javascript string replace substring

有没有办法在java脚本中替换给定位置的String的一部分。例如,我想将小时栏中的00替换为以下字符串中的12substring位于13到15之间。

Mar 16, 2010 00:00 AM 

6 个答案:

答案 0 :(得分:19)

以下是一个选项:

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

myString = myString.substring(0, 13) + 
           "12" + 
           myString.substring(15, myString.length);

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

答案 1 :(得分:6)

正则表达式方法

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

答案 2 :(得分:3)

一个选项是

>>> var test = "Mar 16, 2010 00:00 AM";
>>> test.replace(test.substring(13,15),"12")

答案 3 :(得分:3)

如果它始终是00:小时,

您只需将00:替换为12:

即可

使用replace()

如果不是您需要找到indexOf : 字符,

然后用12替换2位数字。

答案 4 :(得分:1)

您可以在Javascript中直接使用replace()方法和indexOf()字符串。

答案 5 :(得分:0)

另一个创意可能是转换为数组splice并将其转换回字符串。

let str = "Mar 16, 2010 00:00 AM";
let arr = str.split("");
arr.splice(13,2,"1","2");
str = arr.join("");