使用SplitJson处理器后如何获取带双引号的数据?
解决SplitJson处理器拆分后无双引号的问题
方法1:修改SplitJson的JsonPath表达式
SplitJson默认拆分数组元素时会提取原始值(不带引号的字符串),可以直接在JsonPath Expression里使用JsonPath的@json函数,把元素转换成JSON格式的字符串:
- 原表达式:
$[*] - 修改后:
$[*] | @json
这样拆分后的每个Flowfile内容就是带双引号的标准JSON字符串,比如"Consultation"。
方法2:用ReplaceText处理器补全双引号
如果已经完成拆分,后续可以通过ReplaceText处理器给内容前后添加双引号:
- 在SplitJson后添加ReplaceText处理器;
- 设置
Search Value为正则表达式^(.*)$; - 设置
Replacement Value为"$1"; - 选择
Replacement Strategy为Replace Entire Text;
运行后每个Flowfile的内容就会被包裹上双引号。
方法3:用JoltTransformJSON预处理/后处理
如果需要更灵活的JSON结构调整,可以配合JoltTransformJSON:
- 拆分前:用Jolt把数组中的每个元素包装成带引号的字符串;
- 拆分后:用Jolt将纯文本值转换为JSON字符串类型,确保输出带双引号。
内容的提问来源于stack exchange,提问作者Destiel
相关产品推荐
相关产品推荐

