【发布时间】:2023-02-06 01:21:40
【问题描述】:
我们有这个字符串。我们需要用点 (.) 替换 \(反斜杠)和 \"(反斜杠后跟双引号),但如果 \"(反斜杠后跟双引号)后跟逗号 (,),就像 Id 值末尾的情况一样。我们正在尝试使用replaceAll,因为整个有效载荷相当大。
输入示例:
{
"Name":"138.5\" Ultra\violet"
"Id":"\\z\\\\\\\\",
}
输出应该是:
{
"Name":"138.5. Ultra.violet"
"Id":"..z......",
}
通过使用这段代码,它负责替换\"和\,但它也替换了\",即使它后面跟着逗号(,)。我假设它可以用正则表达式来完成,但我不擅长正则表达式,所以感谢任何帮助。
newcontent=newcontent.toString().replaceAll(/\\"/, '.')
newcontent=newcontent.toString().replaceAll("\\\\", ".")
【问题讨论】:
-
如果您要求使用
groovy语言的正则表达式,为什么要添加标记sap? -
什么生成无效的 Json?
-
当字段后面没有逗号时会发生什么,因为它是对象中的最后一项?
-
"Id":"Some\",thing"会发生什么?对此我有种不好的预感... -
@SandraRossi 我需要在 sap 平台上使用它,因此添加了它。