java:StringEscapeUtils.unescapeJava去掉转义字符

java:StringEscapeUtils.unescapeJava去掉转义字符

1 场景

比如拿到一个字符串,格式如下:

"{\\\"name\\\":\\\"xiaoxu\\\",\\\"age\\\":\\\"27\\\"}"

希望得到如下形式的字符串(json字符串,使用双引号):

{"name":"xiaoxu","age":"27"}

可以使用StringEscapeUtils.unescapeJava去掉转义字符,\就是转义字符,可以将特殊含义的字符,比如换行符:\n,通过转义字符写法:\ \n,将其装换成一个普通的"\n"字符串,而非换行。

2 依赖

依赖使用到的是apache的commons-text包(因为commons-lang3中的StringEscapeUtils.unescapeJava已废弃,需要使用commons-text):

<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-lang3</artifactId>
    <version>3.8.1</version>
</dependency>
<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-text</artifactId>
    <version>1.9</version>
</dependency>

3 代码如下

导包:

import org.apache.commons.text.StringEscapeUtils;
System.out.println("\n");
System.out.println("\\n");
String str = "{\\\"name\\\":\\\"xiaoxu\\\",\\\"age\\\":\\\"27\\\"}";
System.out.println("str="+str);
String s = StringEscapeUtils.unescapeJava(str);
System.out.println("修改后的str="+s);

结果如下:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值