2017-07-26 25 views
1

我有一個CSV列有這樣的內容(只是一個例子):解析多發性值與谷歌瑞風

[{"qual"=>"05-Admmin "name"=>"CLARK C COHO"}, {"qual"=>"20-Soc Con", "name"=>"ALPHA S A"}, {"qual"=>"20-Soc Con", "name"=>"JACK SA"} 

我想從「名稱」字段中自動提取值,並用逗號分開吧,導致如下所示:CLARCK C COHO,ALPHA SA,JACK SA等。

我知道我能得到一個特定的值與此代碼:

value.parseJson()[0].name 

我一直在閱讀文檔,但我不搞清楚如何循環這個所有字段之間。

任何提示?編輯: 這是另一個列的例子。內容確實如下所示:

[{"qual"=>"49-SocAdm", "name"=>"ALVARO R L"}, {"qual"=>"49-SocAdm", "name"=>"GABRIEL G L"}] 
+1

您必須使用'的forEach()'循環的JSON,然後加入以獲得一個逗號分隔字符串:'的forEach(value.parseJson(),E,e.name) .join(',')'我無法嘗試您的示例,不是有效的Json。 –

+0

@EttoreRizza我認爲值得張貼這個答案而不是評論,所以它可以被接受 –

+0

@Owen:我不是絕對相信這是正確的答案。 json發佈的例子很奇怪。我甚至不確定這是一個Json。 –

回答

0

您CSV中的數據不是JSON格式。我不知道這是什麼。一種鍵值格式,但我不知道哪一種。另外,它有時缺少逗號或括號。我們可以嘗試將其轉換爲有效的JSOn,但使用正則表達式提取信息會更容易。這裏是一個Python/Jython的例子。

import re 

pattern = re.compile(r'"name"=>"(.+?)"', re.M) 

return ", ".join(pattern.findall(value)) 

screenshot

+1

完美!非常感謝,Ettore! – abaporu