Java避免转义+去除html标签

目标是将数据库中存贮的一个字符串加工处理,让后放到xml文件中

1、去除html标签

2、依旧会存在特殊字符影响xml解析,所以加入CDATA标签,避免转义



import org.apache.commons.lang.StringEscapeUtils;
import org.apache.commons.lang.StringUtils;


public class ContentUtil {
    /**
     * Regular expression
     */
    public static final String replaceRegularExpression = "<[.[^<]]*>";

    public static String replaceContent(String source) {
        if (StringUtils.isBlank(source)) {
            return source;
        }
        source = source.replaceAll(replaceRegularExpression, "");
        source = source.replaceAll("&nbsp;", "");
        source = StringEscapeUtils.escapeJava("<![CDATA[") + source + "]]>" ;
        return source;

    }

    public static void main(String[] args) {
        String o = "<p>数据脱敏数据脱敏213131231231dvcxvxx rdc 123<sup>12</sup><sup><span style=\"text-decoration: " +
                "underline;\">123</span></sup><span style=\"text-decoration: none;\"><em>22</em>&lt;script&gt;aler" +
                "t(1)&lt;/script&gt;<strong>qwer</strong></span></p><p><span style=\"text-decoration: underline;\">" +
                "<strong>hjdsjjfsdjkfkjdskf.&nbsp;</strong></span></p><p><span style=\"text-decoration: " +
                "underline;\"><strong>qe</strong></span></p><p><span style=\"text-decoration: none;\">hhh" +
                "</span></p><p><span style=\"text-decoration: none;\"><img src=\"p2p/ueditor/image/get/8a078f" +
                "4d14c14454aefad0c83de808b8\" title=\"o-57faa441f0b1477fbe75ac6d1c461280..jpeg\" alt=\"42018af" +
                "ea30af9e30c4028f9d3653a33.jpeg\"/></span></p>";
        String s;
        s = replaceContent(o);
        System.out.println(s);
    }
}

运行结果

<![CDATA[数据脱敏数据脱敏213131231231dvcxvxx rdc 1231212322&lt;script&gt;alert(1)&lt;/script&gt;qwerhjdsjjfsdjkfkjdskf.qehhh]]>

这个字符串就可以完美的放入xml中了,类似如下

<books>
    <book>
        <author>李刚</author>
        <title>疯狂XML讲义</title>
        <publisher>电子工业出版社</publisher>
    </book>
    <book>
        <author>Developer</author>
        <title>XML格式化工具</title>
        <publisher>
            <![CDATA[数据脱敏数据脱敏213131231231dvcxvxx rdc 1231212322&lt;script&gt;alert(1)&lt;/script&gt;qwerhjdsjjfsdjkfkjdskf.qehhh]]>
        </publisher>
    </book>
</books>

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值