如何编写通用正则表达式来提取ExtractText中的数据?

时间:2016-11-22 08:24:12

标签: regex csv apache-nifi

我目前的数据如下,它包含100行

1,Ads,,12,CDMA,,12
2,,12,14,CDMA,,12
..
...
100,DVS,13,,CDMA,12,22

我使用GetFile - > SplitText - > ExtractText使用10个正则表达式属性为我的当前数据拆分行中的数据。

For example my one of the input regex is (.+),(.+),,(.+),(.+),(.+) It will split the regex.1,regex.2 upto regex.5

对于ExtractText处理器中的这个数据,我给出了10个正则表达式属性来匹配当前数据中的所有值。

在未来,将添加另外100行来呈现数据。所以我必须为未来的100行写正则表达式属性。

我还需要为处理器中提取的数据中的所有列添加表达式语言支持。

是否可以为ExtractText处理器中的所有数据提供通用正则表达式?

是否还有其他方法可以通过分隔符(如逗号,NIFI中的管道符号)提取数据?

任何帮助表示感谢。

请有人帮我解决这个问题

1 个答案:

答案 0 :(得分:0)

我只是找到了用于从csv文件中提取数据的常用正则表达式。

([^,]*?),([^,]*),([^,]*),([^,]*),([^,]*),([^,]*),([^,]*)

如果它可能比这个(.+),(.+),,(.+),(.+),(.+)

更好,那可能会非常昂贵

对某人有帮助。