例如,有一个字符串"Apple is red; Banana is yellow; Orange is orange;dummytest"
我想找到最后一个“;” 并摆脱该角色之后的所有内容。就像:
"Apple is red; Banana is yellow; Orange is orange"
我知道一些普通的方法,但最简单的方法是什么?
例如,有一个字符串"Apple is red; Banana is yellow; Orange is orange;dummytest"
我想找到最后一个“;” 并摆脱该角色之后的所有内容。就像:
"Apple is red; Banana is yellow; Orange is orange"
我知道一些普通的方法,但最简单的方法是什么?
我能想到的最简单的方法是使用substring
和lastIndexOf
这样的组合:
var s = "Apple is red; Banana is yellow; Orange is orange;dummytest";
s = s.substring(0, s.lastIndexOf(";"));
//s = "Apple is red; Banana is yellow; Orange is orange"
通常,人们可能倾向于首先验证输入字符串。你可以这样做:
var isValid = s.lastIndexOf(";") > -1;
substring
但是,如果您使用with作为长度参数,javascript 不会抛出错误-1
(例如,与 C# 不同),您最终会得到一个空字符串结果,这可能是人们想要的结果。
indexOf
此外,为了完整起见,您可以使用该函数在字符第一次出现时剪切字符串,如下所示:
s = s.substring(0, s.indexOf(";"));
//s = "Apple is red"