在JavaScript中,我有一个形如“/john/smith”的字符串。 我想获得数组“first-name”:“john”,“last-name”:“smith”。
JS是否有一些基于分隔符解析此字符串的简便函数? 我没有看到任何内容,并且谷歌除了进行一些正则表达式之外什么都没返回。
JS是否有一些基于分隔符解析此字符串的简便函数? 我没有看到任何内容,并且谷歌除了进行一些正则表达式之外什么都没返回。
var str="/john/smith"
var ar=str.split("/");
现在 ar[1] 将包含 firstname
& ar[2] 将包含 lastname
var namestring = "/John/Smith";
var pieces = namestring.split("/");
pieces[1]包含"John",pieces[2]包含"Smith"。请注意,这些索引数组是1和2,而不是0和1。 pieces[0]包含"",因为split()返回由提供的分隔符分隔的字符串。在第一个“/”字符之前有一个空字符串,因此第一个结果为空。var str = "/john/smith";
//empty is here because if you split by / you'll get ["", "john", "smith"]
var getObject = function(empty, first, last) {
//You could traverse arguments, witch will have every match in an "array"
return {
first_name: first,
last_name: last
};
}
firstAndLastName = getObject.apply(null, str.split('/')); //Object {first_name: "john", last_name: "smith"}
split()
方法就可以搞定了
var str="/john/smith"
var arr=str.split("/");
arr[1]将提供名字,而arr[2]将提供姓氏
/
,以下方法将输出正确的结果:var result = str.match(/[^/]+/g);
或者:
var result = str.split('/').slice(1);
var myOriginalString = '/John/Smith';
var afterSplitArray = myOriginalString.split('/');
var firstName = afterSplitArray[1]; // John
var lastName = afterSplitArray[2]; //Smith