0

我需要使用 reg exp 拆分此文本。到目前为止,我设法分割文本,我确实设法用“;”分割 使用

var array3 = fText.match(/(\d;)/g);

结果是 [1;1;2;1;3;2;4;2;5;3;6;3;]

但我真正需要的是仅将文本拆分为第一个“;” 所以我得到一个看起来 [1,2,3,4,5,6...] 的数组,然后用第二个“;”分割 所以我得到 [1,1,2,2,3,3....] 的数组

1;1; Podkategorija1
2;1; Podkategorija2
3;2; Podkategorija3
4;2; Podkategorija4
5;3; Podkategorija5
6;3; Podkategorija6
4

2 回答 2

2

试试下面的代码:

var s = 
    '1;1; Podkategorija1\n' +
    '2;1; Podkategorija2\n' +
    '3;2; Podkategorija3\n' +
    '4;2; Podkategorija4\n' +
    '5;3; Podkategorija5\n' +
    '6;3; Podkategorija6\n';
console.log(s.match(/^[^;]*(?=;)/mg));
console.log(s.match(/^([^;]*;){2}/mg).map(function(s) { return s.split(';')[1]; }));

印刷

[ '1', '2', '3', '4', '5', '6' ]
[ '1', '1', '2', '2', '3', '3' ]
于 2013-08-19T09:08:30.380 回答
0
var nums = input.split(/\n/).map(function (line) { 
    return line.split(/;/).slice(0,2);
});

[
  ["1","1"],
  ["2","1"],
  ["3","2"],
  ["4","2"],
  ["5","3"],
  ["6","3"]
]

对于多行字符串

1;1; 分类目录1
2;1; 分类目录2
3;2; 分类目录3
4;2; 分类目录4
5;3; 分类目录5
6;3;分类目录6
于 2013-08-19T09:15:52.943 回答