字符串的转义
2019-01-02 本文已影响0人
风一样的存在
在工作中经常遇到这样的问题,要把html或者xml中的'<>',单引号或者双引号,斜杠等转义或者反转义。通常最笨的方法是把要转义的字符或者不需要的字符replace掉,这样的代码未免太low了。
其实apache提供了很多有用的工具库可以使用。commons-lang3中的StringEscapeUtils就可以很便利的解决以上的问题,有很多都很常用。
- escapeHtml3或escapeHtml4可以转义html中的标点符号和尖括号
String text="<div class=\"main-panel\">主要内容</div>";
System.out.println(StringEscapeUtils.escapeXml10(text));
//输出结果:<div class="main-panel">主要内容</div>
- unescapeJava反转义字符串中的转义字符
String text="2018\\/10\\/09";
System.out.println(StringEscapeUtils.unescapeJava(text));
//输出结果:2018/10/09
- escapeXml10转义xml字符串
String text="<name>jack</name><age>18</age>";
System.out.println(StringEscapeUtils.escapeXml10(text));
//输出结果:<name>jack</name><age>18</age>