在Google优化中搜索和替换多个值

时间:2014-02-25 12:35:44

标签: replace openrefine

我想在Google Refine中使用GREL(或其他任何内容)的单个函数搜索和替换列中的多个值。

例如:
1.替换(价值,“Buch”,“bibo:书”)
2.替换(值,“Zeitschrift”,“bibo:Journal”)
3.替换(值,“专利”,“bibo:专利”)
还有更多。

有没有办法用一个GREL表达式做到这一点?

2 个答案:

答案 0 :(得分:5)

对于前三个,您可以这样做:

value.replace("Buch", "bibo:Book").replace("Zeitschrift", "bibo:Journal").replace("Patent", "bibo:Patent")

根据你的“更多”的数量,这种模式可能就足够了。否则,您可以调查某种类型的表查找(在Python中可能比GREL更容易 - 只需为表达式语言选择Jython)。

答案 1 :(得分:0)

要在单个GREL行中执行此操作:

replace(value,/(.+)/,"bibo:$1")

我用它来用逗号重新格式化一列数字字符串:

1,317
2,000
1,055

GREL表达式

replace(value,/(\d),(\d)/,"$1$2")

返回

1317 2000 1055

然后我可以将其用作数字。