从广义上讲,这就是我要做的事情:在电子表格的一个单元格中解析一个字符串,然后如果在解析的单元格中找到某些关键字,则将关键字添加到该行中的另一个单元格。
我正在使用OpenRefine(技术上是Google Refine 2.5)尝试使用“基于此列添加列”功能,并且我还没有在新列中显示任何内容。< / p>
这是我正在使用的GREL表达式的当前迭代:
if (contains(cells["dates and codes"].value,"beef"), cells["protein"].value +=" beef", "")
它引发了以下错误:
偏移量77处的解析错误:缺少数字,字符串,标识符,正则表达式或带括号的表达式
我是这个软件和GREL的新手,但我的搜索还没有出现这种字符串函数。 (我想我现在对如何引用特定细胞有更好的了解,但我认为这也可能是问题。)
一个。这可能吗?和 B.有没有比编写一堆if(contains())语句更有效的方法呢?
答案 0 :(得分:0)
您的GREL表达式有意义,看起来您在偏移77处有一个额外的等号。
if(contains(cells [“date and codes”]。value,“beef”),cells [“protein”]。value +“beef”,“”)
您将需要在任何情况下定义包含逻辑,以便您可以将所有内容包装在超长GREL表达式中。或者,您可以分别对每个if(contains())进行分解。为了获得一些时间,我将做如下:
您可以在this blog post中找到有关此流程的更多详细信息。