我试图在第三个空间之前提取所有数据......
var str = 'ORD - 1234567 Is the Order Number'
结果应为:
['ORD - 1234567']
答案 0 :(得分:3)
1)Split使用空格作为分隔符的字符串。
2)获取前3个元素的新数组的slice。
3)Join将切片的数组再次插入空格。
4)将整个事物作为result
的第一个元素。
var result = [str.split(' ').slice(0,3).join(' ')];
<强> DEMO 强>
答案 1 :(得分:1)
您可以执行以下操作。
str.split(" ").slice(0,3);
这会将字符串转换为在每个空格上拆分的项目数组。然后.slice(0,3)
返回数组中的前三项。然后,您可以使用join(" ")
将这三个项目转换为一个字符串。
var str = 'ORD - 1234567 Is the Order Number';
var result = [str.split(" ").slice(0,3).join(' ')];
console.log(result);
&#13;
答案 2 :(得分:0)
更通用的方法:
function nthOccurence(str, sub, occ) {
return str.split(sub, occ).join(sub).length;
}
console.log(str.slice(0,nthOccurence(str,' ',3))); // => "ORD - 1234567"