如何使用javascript替换字符串右端的第x个字符?

时间:2011-10-14 09:29:22

标签: javascript replace substr

我必须在图片"b"属性中找到"g"并将src替换为"someName-b.png"

最初的src类似于"b",而使用JavaScript,我必须将"g"替换为"someName"。但问题是"g"的长度可能不同。基本上我想要做的是找到src属性字符串末尾的第5个字符,然后将第5个字符替换为x

JavaScript中是否有一个函数允许我从字符串末尾找到{{1}}个字符?

3 个答案:

答案 0 :(得分:5)

您可以使用.slice。对于负值,此函数从右侧开始计算:

var a = "123456789"; // sample string

a.slice(0, -5)  // slice from begin to 5th character before end
 + "g"          // add a 'g'
 + a.slice(-4); // slice last 4 characters

// result: 1234g6789

答案 1 :(得分:3)

从字符串末尾找到第5个字符:string.charAt(string.length - 5)

从字符串末尾替换第5个字符:string.substring(0, string.length -5) + 'g' + string.substring(string.length - 4)

答案 2 :(得分:1)

可能不是正则表达式的工作,但嘿,它有效:

> "someName-b.png".replace(/.(.{4})$/, "g$1")
-> "someName-g.png"