在Talend中使用指定内容的列之间标记数据

时间:2015-02-13 06:43:23

标签: rows talend

我有以下格式的某些数据:

  

启动数据

     

印度| 23 | 8.001 | 2013年12月9日

     

UK | 22 | 4.001 | 2013年12月10日

     

美国| 13 | 4.001 | 2013年12月8日

     

数据结束

     

启动数据

     

亚| 123 | 8.001 | 22/09/2013

     

E | 22 | 4.001 | 2013年12月10日

     

美国| 13 | 4.001 | 15/08/2013

     

数据结束

可以有任何' n'文件中第一个Start-Data和Last End-Data之前的行数。我想忽略这些行,只在第一个开始数据和最后一个结束数据之间取行。我怎么得到它?

我正在尝试使用tStandardizeRow来实现它。

1 个答案:

答案 0 :(得分:0)

考虑管道是这里的分隔符,除了起始数据和结束数据之外的所有其他行的列数是一致的......那么你可以做下面这样的事情 tFileInputDelimited - > tfilterRow - 。要插入/处理数据的Finaloutput / dboutput组件。

在tFileInputDelimited模式中,我将如下定义它 column1,column2,column3,column4 ... delimeter |和\ n。

结束

现在在tFilterRow中我将应用过滤条件,因为column1不等于Start-Data和End Data ....

在高级别我们正在读取所有行,但是然后使用tfilterrow进行过滤...因为我们使用了行尾,所以你的结束数据和起始数据将被读取,但作为这些行的column1值... 你也必须允许所有列都可以为空...