我想在Google Refine中使用GREL(或其他任何内容)的单个函数搜索和替换列中的多个值。
例如:
1.替换(价值,“Buch”,“bibo:书”)
2.替换(值,“Zeitschrift”,“bibo:Journal”)
3.替换(值,“专利”,“bibo:专利”)
还有更多。
有没有办法用一个GREL表达式做到这一点?
答案 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
然后我可以将其用作数字。