2010-11-26 7 views
1

Я изо всех сил пытаюсь разобраться, как разделить текст на каждые 3 появления «|» персонаж. Вот мой вклад:Как разбить строку на каждые 3 появления символа?

123 | name1 | description | $ 2.980,00 | 234 | name2 | description | $ 2.980,00 | 345 | name3 | description | $ 2.980,00 

Это будет мой желаемый результат:

var array[0] = "123 | name1 | description | $ 2.980,00" 
var array[1] = "234 | name2 | description | $ 2.980,00" 
... 
+2

Нужно ли использовать регулярное выражение? – 2010-11-26 20:16:21

+0

Я не знаю, если есть другой способ сделать это без проблем :) – mateusmaso 2010-11-26 20:17:03

ответ

2

Я хотел бы сделать это таким образом (как уже упоминалось Кенг, это называется tokenizing):

var myarray=text.split("|"); 
var json = new Array(); 
for (var i=0; i+3<myarray.length; i+=4) { 
json.push({id: myarray[i], name: myarray[i+1], 
     desc: myarray[i+2], price: myarray[i+3]}); 
} 
Смежные вопросы