У меня есть процессор NiFi ExtractText, использующий регулярное выражение, которое получает желаемый контент из потокового файла и сохраняет его в атрибутах потокового файла. В регулярном выражении есть 2 группы захвата, поэтому каждый раз он создает 2 атрибута.
Например, после этого шага у меня есть эти атрибуты и их значение ('regex' - это имя свойства, которое становится именем атрибута):
- regex1: name1
- regex2: некоторая информация о name1
- regex3: name2
- regex4: некоторая информация о name2
- и т.д.
Я бы хотел получить все эти значения атрибутов по паре в формате CSV (например). Сейчас я использую процессор ReplaceText для получения значений атрибутов.
Я могу получить их в качестве значения замены:
${regex.1};${regex.2}
${regex.3};${regex.4}
Но как я могу получить все атрибуты, сгенерированные регулярным выражением, не зная, сколько значений в исходном файле? Чтобы сделать это, я бы хотел связать все «нечетные» атрибуты с «четными», используя какой-то цикл. Возможно ли это в NiFi? Или как еще я могу это сделать?
Спасибо