给定一个字符串,像这样:获取字符串的第一个休息的逗号分隔值在Javascript
"boy, girl, dog, cat"
什么是得到的第一个字和他们的休息的好方法,这样我就可以有这样的:
var first_word = "boy";
var rest = "girl, dog, cat";
现在我有这样的:
my_string.split(",");
但是,这给了我所有的都是逗号之间的话。
给定一个字符串,像这样:获取字符串的第一个休息的逗号分隔值在Javascript
"boy, girl, dog, cat"
什么是得到的第一个字和他们的休息的好方法,这样我就可以有这样的:
var first_word = "boy";
var rest = "girl, dog, cat";
现在我有这样的:
my_string.split(",");
但是,这给了我所有的都是逗号之间的话。
您可以同时使用split
和splice
:
var str = "boy, girl, dog, cat";
var arr = str.split(",");
var fst = arr.splice(0,1).join("");
var rest = arr.join(",");
或者类似
// returns an array with the extracted str as first value
// and the rest as second value
function cutFirst(str,token){
var arr = str.split(token);
var fst = arr.splice(0,1);
return [fst.join(""),arr.join(token)];
}
您可以使用正则表达式的第一个逗号前后两个字符串匹配:
var v = "boy, girl, dog, cat";
var strings = v.match(/([^,]*),(.*)/);
现在strings
将是一个三元素数组,其中
strings[0]
包含完整的字符串strings[1]
包含第一个逗号strings[2]
包含第一个逗号使用substring()
组合(返回两个指标之间的串后,之前的所有字符串或字符串的结尾)和indexOf()
(返回另一个字符串中子字符串的第一个位置):
var input = "boy, girl, dog, cat",
pos = input.indexOf(',');
console.log(input.substring(0, pos));
console.log(input.substring(pos + 1));
也许你想添加一个trim()
调用结果来删除空格。
另一个选择是分裂阵列,获得第一和加盟休息:
var my_string = "boy, girl, dog, cat";
var splitted = my_string.split(',');
var first_item = splitted.shift();
var rest_of_the_items = splitted.join(',');
这里是JSFiddle。
您可以用懒惰的方式创建一个数组,然后检索第一个元素。
var ArrayFromString = "boy, girl, dog, cat".split(",");
firstElement = ArrayFromString.pop();
alert(firstElement); //boy
alert(ArrayFromString); //girl, dog, cat
精彩完成 – Moitt