如何验证具有多个换行符和对换符的json?

时间:2019-03-13 11:05:21

标签: json

示例:

{"text": " abc

def

ghi

jkl
mk

opqr

stuv" }

是否可以在不中断的情况下进行验证?

3 个答案:

答案 0 :(得分:0)

JSON不允许字符串中的换行符。必须将它们替换为\n

答案 1 :(得分:0)

使用了jsoneditoronline,并使用/ n或/ r / n对其进行了转义。然后获得经过验证的json。在移动屏幕上,它在文本之间提供了所需的换行符。使用ms单词的嵌套表功能来合并json格式为{“ text”:“ ...”}的列,因为excel会将devnagiri分为两部分。

答案 2 :(得分:-2)

  

是否可以在不中断的情况下进行验证?

是的,可以。验证结果为:无效。 :-) JSON不允许在字符串文字中使用未转义的换行符。

如果您要检查无效行是否有效(而不是),但是如果不删除无效的换行符,我非常怀疑您能否在不编写自己的JSON验证器的情况下(可能通过分叉来实现)一个现有的网站并进行修改,json.org网站上列出了几个网站。

您可以替换,使用字符串替换将回车符\r的转义序列和换行符转换为\n的转义序列,但这似乎会打破您对删除的限制换行符。

在JavaScript中,它将是:

json = json.replace(/\r/g, "\\r").replace(/\n/g, "\\n");
// or
json = json.replace(/[\r\n]/g, m => m === "\r" ? "\\r" : "\\n");

或类似的