2

在 NiFi 中,我正在处理一个包含以下属性的流文件:

Key: 'my_array'
    Value: '[u'firstElement', u'secondElement']'

我想在这个数组上拆分 flowFile 以分别处理每个元素(然后合并)。我尝试使用SplitJson处理器,但它需要JSON内容才能操作,所以我之前使用AttributesToJSON过。不幸的是,产生的flowFile的内容是:

{"my_array": "[u'firstElement', u'secondElement'"}

我收到错误

$['my_array'] 的评估值 [u'firstElement', u'secondElement'] 不是 JSON Array 兼容类型,无法拆分。

是否可以将my_array字符串转换为正确的 JSON 数组?我需要使用ExecuteScript还是有一些更简单的方法?

4

2 回答 2

3

ReplaceTextReplacement StrategyofAlways ReplaceReplacement Valueof ${my_array}and then怎么SplitJSON样?这将用此属性的值替换您的 FlowFile 的内容,然后您可以SplitJSON使用它。

于 2019-06-26T08:50:47.067 回答
0

假设我想将字符串:“Hashtags”:“['tag1','tag2']”(我在 Nifi 中生成的 json 的一部分)更改为:“Hashtags”:['tag1','tag2' ]。

我要做的是:

Apache Nifi 替换文本示例

我将 ReplaceText 与Replacement Strategy : Regex Replace和一起使用Replacement Value : a regex Expression。这将用该属性的值替换 FlowFile 的匹配内容,然后您可以继续您的过程。

于 2020-10-17T16:45:34.750 回答