2015-06-02 1 views
1

Эй, ребята, мне нужна помощь в том, как написать этот jscript, чтобы он включал пустые поля, разделенные запятыми в начале, и помещал их в массив.Jscript String.split на csv-файле, игнорирует ведущие пустые поля

temp = new Array; 
String = ",,field3,field4,,field6"; 
temp = String.split(regexp, -1); 

У меня есть регулярное выражение, которое выберет запятые. Но я знаю, что split игнорирует пустые поля. Мне нужны эти поля, так как я работаю с чтением файла csv. Поэтому мне нужно, чтобы массив содержал пустые строки, где есть пустое поле данных.

То, что я хочу

температура [0] = "", температуры [1] = "", температура [3] = поле 3

Что это

темп [0] = field3

Как т шляпу, любые идеи или обходные пути?

ответ

0

Обойти довольно странное поведение * JScript является использовать строку (не регулярное выражение) Сепаратор:

var s = ",,field3,field4,,field6"; 
var a = s.split(","); 
WScript.Echo("a:", a.length, "[" + a.join(",") + "]"); 
var b = s.split(/,{1,1}/); 
WScript.Echo("b:", b.length, "[" + b.join(",") + "]"); 

выход:

cscript 30603770.js 
a: 6 [,,field3,field4,,field6] 
b: 3 [field3,field4,field6] 

(*) По крайней мере один другой реализации Javascript ведет себя как следует:

Rhino 1.7 release 5 PRERELEASE 2013 07 16 
js> var s = ",,field3,field4,,field6"; 
js> var a = s.split(","); 
js> print("a:", a.length, "[" + a.join(",") + "]"); 
a: 6 [,,field3,field4,,field6] 
js> var b = s.split(/,/); 
js> print("b:", b.length, "[" + b.join(",") + "]"); 
b: 6 [,,field3,field4,,field6] 

 Смежные вопросы

  • Нет связанных вопросов^_^