gpt4 book ai didi

json - 如何读取无效的 JSON 格式亚马逊 firehose

转载 作者:太空宇宙 更新时间:2023-11-03 16:40:58 25 4
gpt4 key购买 nike

我遇到了这个最可怕的场景,我想读取 kinesis firehose 在我们的 S3 上创建的文件。

Kinesis firehose 创建的文件并不是每个 json 对象都在一个新行上,而是一个 json 对象串联文件。

{"param1":"value1","param2":numericvalue2,"param3":"嵌套 {bracket}"}{"param1":"value1","param2":numericvalue2,"param3":"嵌套{括号}"}{"param1":"value1","param2":numericvalue2,"param3":"嵌套{括号}"}

现在这是普通 JSON.parse 不支持的场景,我尝试使用以下正则表达式:.scan(/({((\".?\":.?)* ?)})/)

但扫描似乎只适用于没有嵌套括号的场景。

有人知道解决这个问题的工作/更好/更优雅的方法吗?

最佳答案

最初的 anwser 中的一个是针对不带引号的 json 的,这种情况有时会发生。这个:

({((\\?\".*?\\?\")*?)})

适用于带引号的 json 和不带引号的 json

除此之外,它略有改进,以使其更简单..因为您可以使用整数和普通值..由于双重捕获组,字符串文字中的任何内容都将被忽略。

https://regex101.com/r/kPSc0i/1

关于json - 如何读取无效的 JSON 格式亚马逊 firehose,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51315637/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com