0

正規表現を使用してこのテキストを分割する必要があります。これまでのところ、テキストを分割することができ、「;」で分割することもできました 使用して

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

結果は [ 1;1;2;1;3;2;4;2;5;3;6;3;] です。

しかし、実際に必要なのは、最初の「;」だけでテキストを分割することです だから私は[1,2,3,4,5,6...]を見て、2番目の「;」で分割する1つの配列を取得します だから私は[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 に答える