字符串操作 KNIME 中的正则表达式替换

标签 regex knime

我正在尝试使用 KNIME (v3.2.1) 删除所有以非数字字符开头的单元格的内容。我有不同的想法,但没有任何效果。

1) 字符串操作节点:regexReplace(§column§,"^[^0-9].*","")

单元格包含多行,但此方法仅删除第一行。

2) 字符串操作节点:regexMatcher($casrn_new$,"^[^0-9].*") 后跟规则引擎节点以删除所有为“TRUE”的列。

regexMatcher 给出了“False”,即使对于应该为“True”的列也是如此。

3) 字符串替换器节点:我将表达式 ^[^0-9].* 插入模式列并选择“替换整个字符串”,但该节点无法识别正则表达式,因此没有任何东西被替换。

有没有人对这些方法中的任何一种都有解决方案,或者知道另一个可以完成这项工作的节点?非常感谢您的帮助!

最佳答案

我会选择您的第一个解决方案,因为它已经有效,您只需扩展您的正则表达式以包含换行符。我会尝试这样的事情:

regexReplace($column$,"^[^0-9].(.|\n)*","")

这应该匹配以非数字字符开头的任何文本,后跟出现任意次数的任意字符或换行符。根据行尾,您可能需要 (.|\n|\r) 而不是 (.|\n)

关于字符串操作 KNIME 中的正则表达式替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40003509/

相关文章:

Python 正则表达式在输出中搜索并打印 'apostrophes' (')

java - 使用 Knime 定义 Oozie 工作流程

java - 正则表达式匹配如何工作?

javascript - Node.js mysql - 嵌套查询和异步/等待

java - 集成身份验证错误 Microsoft SQL Server 2017 和 Knime

mysql - 基于列合并两个表(部分匹配或逗号分隔列)?

java - 将我的 Java 应用程序与 knime 链接

rows - 为行创建顺序 ID

javascript - JS正则表达式匹配两种可能的组合

javascript - 删除行空格