根据子字符串定界符分割字符串,将定界符保留在结果中

时间:2019-02-13 13:06:57

标签: javascript

我希望能够基于子字符串定界符分割字符串,并在定界符子字符串的第一个字符之前开始分割。当前:

var string = "choc: 123 choc: 328 choc: 129";
string.split("choc");

会给我["", ":123 ", ": 328", ": 129"],但我希望得到["choc: 123 ", "choc: 328", "choc: 129"]

2 个答案:

答案 0 :(得分:4)

您可以积极地向前看。

var string = "choc: 123 choc: 328 choc: 129";
console.log(string.split(/(?=choc)/));

答案 1 :(得分:0)

您可以按照@Nina Scholz所说的正向先行来完成此操作,并在先行前添加\s*,以删除choc前的任何前导空格:

const string = 'choc: 123 choc: 328 choc: 129';
const result = string.split(/\s*(?=choc)/);

console.log(result);