json反序列化支持反单引号

返回
Author Avatar
钢翼
2021-01-23
编程
54

由于fastjson不能反序列化带有反单引号的json,如

{
	a:`123
456
789`
}

所以我们需要反序列之前用正则替换掉`,如下

  private String toES5(String template){
        String result = template;
        Matcher matcher = Pattern.compile("`((?:[^`\\\\]|\\\\.)*)`").matcher(template);
        while (matcher.find()) {
            result = result.replace(matcher.group(0), "\"" + matcher.group(1).replace("\\`", "`") + "\"");
        }
        return result;
    }