【问题标题】:Handle date column with spaces in nifi在nifi中处理带有空格的日期列
【发布时间】:2021-10-18 22:09:44
【问题描述】:

我正在尝试格式化包含空格的日期字段,以替换 csv 文件中的文本处理器。

由于无法解析作为第一条记录空格的日期列而出现错误。请告诉我如何处理这个问题

错误消息:由于无法将属性值解析为日期,替换文本无法处理会话;日期格式 ddMMyyyy;属性值:

输入 csv:

1,        , 123

2,02091997,234

搜索值:(.{1}),(.{8}), (.{3})

替换值:$1, ${'$2':toDate("ddMMyyyy") :format("yyyy-MM-dd HH:mm:ss.SSS") }, $3

替换策略:Regex替换

评估模式:全文

【问题讨论】:

标签: apache-nifi


【解决方案1】:

您可以使用语言表达式中的isEmptyifElse 函数。

例如:${'$2':isEmpty():ifElse('null', '$2':toDate("ddMMyyyy"):format("yyyy-MM-dd HH:mm:ss.SSS")) }

这里我放'null',当没有日期时,你可以选择你想要的值。

但是,如果可以的话,请使用 CSVReacordReader 解析您的 CSV 文件,它可以开箱即用地处理。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-17
    • 1970-01-01
    • 2016-11-25
    • 2016-05-27
    • 1970-01-01
    相关资源
    最近更新 更多