繁体   English   中英

使用 Python 在 Openrefine 中应用正则表达式

[英]Applying regex in Openrefine with Python

我正在尝试在 OpenRefine 3.4 中使用value.findall() function,方法是查找包含特定字符串的列中的所有行,即“ WASHER ”、“ FLAT ”、“ 10MM ”和“ SS ”并将其返回到新列中。 这是我的代码片段。

import re
regex=r"(\WASHER)(\"FLAT")(\"10MM")(\"SS")"
return re.findall(regex, value)

这是屏幕的样子。

我的屏幕截图我列中的数据是什么样的

您需要将以下代码放入框中:

import re
regex=r'^(?=.*\bWASHER\b)(?=.*\bFLAT\b)(?=.*\b10MM\b)(?=.*\bSS\b).*'
return re.findall(regex, value)

这将返回一个完整的字符串,其中包含WASHERFLAT10MMSS作为字符串中任何位置的整个单词。

请参阅正则表达式演示

如果它们立即连续发生,您可以使用

regex=r'.*?\bWASHER\s+FLAT\s+10MM\s+SS\b.*'

请参阅此正则表达式演示

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM