【问题标题】:Is it possible to remove white spaces from the CSV files header name in NiFi?是否可以从 NiFi 中的 CSV 文件标题名称中删除空格?
【发布时间】:2023-03-26 13:01:02
【问题描述】:

我有一个 CSV 文件,其中一些列名中有空格,而一些列名没有字符之间的空格。我想从所有包含空格的标题名称中删除空格。请帮忙。谢谢!

附上截图供参考。示例:'First Name' 我想要 'FirstName'

我正在使用 ReplaceText 处理器,其中在搜索值下我通过 \s 仅搜索标题行空白和替换值作为空字符串。我的评估模式也是“逐行”。所以现在输出文件显示为 FirstName,LastNameshraddha,srivastavsanstuti,srivastav 所以它在一行中显示所有内容。我只想从标题行中删除空格,并且根本不触摸/合并数据值。谢谢

请告诉我如何删除它们。谢谢!

【问题讨论】:

    标签: regex etl apache-nifi removing-whitespace


    【解决方案1】:

    @Shu 的方向是对的,但问题是文本中的所有空格都会被替换。为了只替换标题行中的空格,在舒的解决方案更改中:

    1. 搜索值:

    (?s)(^[^\n]*)(.*$)

    1. 替换值:

    ${'$1':replace(" ","")}$2

    【讨论】:

      【解决方案2】:

      尝试使用以下 ReplaceText 配置:

      搜索价值

      (.*)
      

      重置价值

      ${'$1':replace(" ","")} //we are applying NiFi expression language replace function on the captured group.
      

      字符集

      UTF-8
      

      最大缓冲区大小

      1 MB
      

      替换策略

      Regex Replace
      

      评估模式

      Entire text //works with Line-By-Line mode also
      

      有关 NiFi 表达语言的更多详细信息,请参阅this 链接。

      输入流文件:

      First Name,Last Name
      shraddha,srivastav
      sanstuti,srivastav
      

      输出流文件:

      FirstName,LastName
      shraddha,srivastav
      sanstuti,srivastav
      

      【讨论】:

        【解决方案3】:

        您应该能够进行以下匹配:

        /[\s]/g
        

        它匹配所有空白。 然后简单地用一个空字符串替换。 编辑

        试试这个:

        /(?<!\n.+)[ ]/g
        

        只有在它之前没有换行符时它才会匹配一个空格。换句话说,只有第一行会匹配。 再次,替换为空字符串。

        【讨论】:

        • 感谢您的回复。我在搜索值中尝试了您的正则表达式并将替换值设置为空字符串,但它没有删除输出文件中的空白。有什么原因吗?
        • 可能是个愚蠢的问题:替换后是否保存文件?
        • 所以我的流程是GetFile->ReplaceText->PutFile。所以替换后文件在 putfile 目录中。你能告诉我我做错了什么吗?我的 replaceText 的评估模式为“逐行”。请帮忙!
        • 我尝试将搜索值中的 \s 和替换值作为空字符串传递,但现在输出文件显示为 FirstName,LastNameshraddha,srivastavsanstuti,srivastav 所以它在一行中显示所有内容。请帮忙
        猜你喜欢
        • 1970-01-01
        • 2016-12-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-01-04
        • 1970-01-01
        • 1970-01-01
        • 2012-06-29
        相关资源
        最近更新 更多