2

在 OpenRefine 中工作我想找到第二个单词是“Street”的单词对。

我有一个适用于此的 python 正则表达式,但我无法让它在 OpenRefine 中工作。

https://regex101.com/r/igjCuo/94显示正则表达式工作

\w+(\s+Street)

我的问题是我显然没有正确地将正则表达式插入 OpenRefine。

测试

如果我尝试

value.find("Street") 

然后所有包含该单词的单元格都正确返回。

但是将正则表达式放入同一个查询中是行不通的

我知道这是格式化查询的基本内容,但我很茫然,非常感谢一些帮助。

4

1 回答 1

3

您没有形成正确的正则表达式文字/字符串模式并添加了额外的双引号。

您可以使用

value.find("\\w+\\s+Street")
value.find(/\w+\s+Street/)

请注意,您不需要捕获组,因为您需要获取整个匹配项。

请参阅OpenRefine 3.0 及更高版本

注意:如果p是一个字符串,那么我们将它编译成一个正则表达式模式,否则,如果p已经是一个正则表达式,那么我们就使用那个正则表达式模式。注意:在字符串引号中提供正则表达式模式时,您需要使用转义(双斜杠)

于 2019-11-14T12:28:03.097 回答