如何在OpenRefine中解析列中的值

时间:2017-06-26 17:34:12

标签: javascript java api google-maps-api-3 openrefine

我有Google地方详细信息的结果。我想解析它的电话号码。我怎么能这样做?我正在使用OpenRefine并在另一列的基础上使用提取列。

1 个答案:

答案 0 :(得分:0)

Here is an example of Google Place JSON.

如您所见,“formated_phone_number”是“结果”的直接子项。在Open Refine中,您可以使用以下GREL公式提取此元素:

  Customer ID |  Acceptance Count | Discount Count
       211              2                  1
       202              0                  1
       194              1                  0
       198             N/A                N/A

enter image description here

如果有多个电话号码,请使用value.parseJson().result.formatted_phone_number 循环迭代数组。 Open refine中的语法是:

for

(x是一个变量名,你可以使用它或你想要的。)

结果将是一个数组。由于Open Refine列只能显示字符串,数字和日期,因此必须使用join函数(以及您选择的分隔符)将数组转换为字符串。

forEach(value.parseJson().result, x, x.formatted_phone_number)