這裏的數據的應該是什麼樣子:解析數據不一致
Some junk data
More junk data
1. fairly long key, all on one line
value: some other text with spaces and stuff
2. hey look! another long key. still on one line
value: a different value with some different information
有這幾條每個文件,一般二三十個。鍵值對的總數超過20,000,這意味着手動更正每個文件是不可選的。預設每個鍵的數字應該正確增加。應該有一個值和下一個鍵之間的換行符。每個值都應以字符串「value」開頭:
現在,我逐行排序並將每行分類爲鍵,值或垃圾。然後我從密鑰中解析數字,並將數字,密鑰和值存儲在一個對象中。
數據格式不正確時出現問題。以下是我迄今遇到的幾個問題:
- 鍵和值之間沒有換行符。
- 在鍵或值中間出現意外的換行符,導致程序將每個鍵或值的一部分視爲垃圾數據。
- 單詞「價值」被拼寫錯誤。
我通過計算每行的前六個字符與主字符串「value:」之間的Levenstein距離來處理第三種情況。我如何解決其他兩個問題?
如果有問題,解析發生在node.js服務器上,但如果他們可以更輕鬆地處理這些不一致的數據,我可以接受其他語言。
This Works,thanks!我猜「價值」的拼寫很難得,每當它出現時我都有能力改變它。 – arknave 2013-03-12 21:48:44