удалить пустые строки в файле CSV с помощью NiFi - PullRequest
0 голосов
/ 04 января 2019

Я хочу добиться простого варианта использования для удаления любой пустой строки, найденной в файле CSV.Как я могу добиться этого с помощью NiFi?

У меня есть файл CSV следующим образом: (Плз см. Прикрепленный снимок экрана, показывающий, какую строку необходимо удалить) enter image description here

Iхотите удалить первый Blank Row в csv чуть выше заголовков, используя NiFi.Пожалуйста, любые предложения приветствуются.Спасибо!

1 Ответ

0 голосов
/ 04 января 2019

Вы можете использовать процессор ReplaceText, который заменяет \A\n|\n*\s*(?=\n) на '' (пустое значение замены).Регулярное выражение поиска ищет:

  • \A\n - начало содержимого, за которым сразу следует новая строка ИЛИ
  • \n*\s*(?=\n) - новая строка (0 или более) с последующим пробелом (0 или более), за которым следует символ новой строки (не перехвачен с использованием группы предпросмотра)

Обновление

Не уверен, почему за это проголосовали или сделалине работает для некоторых пользователей, так как я просто создал шаблон , и он работал точно так, как описано.

Overview of NiFi flow

Configuration of GenerateFlowFile processor

Configuration of ReplaceText processor

2019-01-08 12:25:27,642 INFO [Timer-Driven Process Thread-2] o.a.n.processors.standard.LogAttribute LogAttribute[id=2f22d047-0168-1000-47b0-9ec963e65367] logging for flow file StandardFlowFileRecord[uuid=6c9cc388-19c8-4b98-9970-6a6e3979e4ee,claim=StandardContentClaim [resourceClaim=StandardResourceClaim[id=1546979126561-1, container=default, section=1], offset=152, length=50],offset=0,name=6c9cc388-19c8-4b98-9970-6a6e3979e4ee,size=50]
--------------------------------------------------
Standard FlowFile Attributes
Key: 'entryDate'
    Value: 'Tue Jan 08 12:25:27 PST 2019'
Key: 'lineageStartDate'
    Value: 'Tue Jan 08 12:25:27 PST 2019'
Key: 'fileSize'
    Value: '50'
FlowFile Attribute Map Content
Key: 'filename'
    Value: '6c9cc388-19c8-4b98-9970-6a6e3979e4ee'
Key: 'path'
    Value: './'
Key: 'uuid'
    Value: '6c9cc388-19c8-4b98-9970-6a6e3979e4ee'
--------------------------------------------------
header1,header2,header3
A1,A2,A3
B1,B2,B3
C1,C2,C3
...