2017-05-13 87 views
-1

我有一個文本文件,需要從不同的行中提取一些數字。數字的序列並不總是相同的,所以我需要循環,直到沒有更多的數字。下面是一行示例。Javascript從文本文件循環讀取數字,直到沒有更多數字

編號:1,2,3,4(222.000,222.000),(333.000,222.000),.....,

需要創建一個循環這裏(下圖)

output1=output1.split("\n").filter(/./.test, /Numbers/).map(line => line.split(/,|\(|\)/).filter(number => number != "")[7]).join("\n"); 
output2=output2.split("\n").filter(/./.test, /Numbers/).map(line => line.split(/,|\(|\)/).filter(number => number != "")[8]).join("\n"); 
output3=output3.split("\n").filter(/./.test, /Numbers/).map(line => line.split(/,|\(|\)/).filter(number => number != "")[9]).join("\n"); 
output4=output4.split("\n").filter(/./.test, /Numbers/).map(line => line.split(/,|\(|\)/).filter(number => number != "")[10]).join("\n"); 
output5=output5.split("\n").filter(/./.test, /Numbers/).map(line => line.split(/,|\(|\)/).filter(number => number != "")[11]).join("\n"); 
output6=output6.split("\n").filter(/./.test, /Numbers/).map(line => line.split(/,|\(|\)/).filter(number => number != "")[12]).join("\n"); 
output7=output7.split("\n").filter(/./.test, /Numbers/).map(line => line.split(/,|\(|\)/).filter(number => number != "")[13]).join("\n"); 
+3

請更清楚。我不明白你在問什麼。 –

+1

需要採取上面的代碼行,並將其循環..對於每個變量...它將從文本中分配數量。 –

回答

0

您可以創建一個函數返回的字符串輸入.split().map().filter()電話。創建具有屬性名稱的對象,反映索引的值對以括號表示設置爲屬性,並將字符串輸入設置爲值。使用.forEach()來迭代對象數組,在每個對象上調用函數。

function filter(str, index) { 
    return str.split("\n").filter(/./.test, /Numbers/) 
     .map(line => line.split(/,|\(|\)/) 
     .filter(number => number != "")[index]).join("\n") 
}; 

[output1, output2, output3, output4, output5, output6, output7] = 
[{7:output1}, {8:output2}, {9:output3}, {10:output4} 
, {11:output5} {12:output6}, {13:output7}] 
.map(o => filter.apply(null, Object.entries(o).pop())); 
相關問題