javascript子串帮助

时间:2009-08-20 22:49:11

标签: javascript string parsing substring

我有一个字符串“2500 - SomeValue”。如何删除'SomeValue'中'S'之前的所有内容?

var x = "2500 - SomeValue";
var y = x.substring(x.lastIndexOf(" - "),
// this is where I'm stuck, I need the rest of the string starting from here. 

感谢您的帮助。

〜CK

7 个答案:

答案 0 :(得分:7)

将3(长度为“ - ”)添加到最后一个索引并取消第二个参数。将一个参数传递给substring时的默认值是转到字符串的末尾

var y = x.substring(x.lastIndexOf(" - ") + 3);

答案 1 :(得分:3)

那只是:

var y = x.substring(x.lastIndexOf(" - ") + 3);

当您省略第二个参数时,它只会为您提供字符串末尾的所有内容。

编辑:因为你想要之后的所有内容“ - ”我已经将3添加到起点以跳过这些字符。

答案 2 :(得分:0)

x.substring(x.lastIndexOf(" - "),x.length-1); //corrected

答案 3 :(得分:0)

var y = x.split(" ",2);

然后你将有一个子串数组。第三个y [2]将是你需要的。

答案 4 :(得分:0)

var y = x.substring(0, x.lastIndexOf(' - ') + 3)

答案 5 :(得分:0)

var y = x.slice(x.lastIndexOf(“ - ”),x.length - 1);

这会将值作为字符串返回,无论该值是多少还是多长,它与数组无关。

答案 6 :(得分:0)

var y = x.slice(x.lastIndexOf("-")+2);

通常,我们没有空间,所以我们写+1,但在您的情况下,+2可以正常工作。