【发布时间】:2014-10-15 16:00:09
【问题描述】:
一般来说,这就是我要做的事情:解析电子表格的一个单元格中的字符串,然后如果在解析的单元格中找到某些关键字,则将关键字添加到该行中的另一个单元格。
我正在使用 OpenRefine(技术上是 Google Refine 2.5)尝试使用“基于此列添加列”功能来执行此操作,但我还没有在新列中实际显示任何内容。
这是我正在使用的 GREL 表达式的当前迭代:
if (contains(cells["dates and codes"].value,"beef"), cells["protein"].value +=" beef", "")
它抛出以下错误:
偏移 77 处的解析错误:缺少数字、字符串、标识符、正则表达式或带括号的表达式
我是这个软件和 GREL 的新手,但我的搜索还没有出现这种字符串函数。 (我想我现在对如何引用特定单元格有了更好的了解,但我想这也可能是问题所在。)
A.这可能吗?和
B. 有没有比编写一堆 if(contains()) 语句更有效的方法?
【问题讨论】:
-
或者,有没有办法根据手动文本过滤器将关键字连接到新列中的文本上?即,搜索“牛肉”,然后将“牛肉”连接到这些行的列中?到目前为止,我的努力导致仅连接第二列中已有数据的行,而不是该文本过滤器中的行。
标签: regex string openrefine