BBS 论坛帖子无法显示问题

由于很多学员在发表帖子的时候从word将内容粘贴过来。带来了很多word样式,其中包含JSON中不允许的半角双引号。造成帖子内容超过系统限定字符,并且对帖子数据的现实产生了影响。

解决办法:利用正则表达式将帖子中的样式进行过滤。代码如下

public static String tagsProcessor(String inputString){
        String processedString = "" ;
        Pattern js_pattern,style_pattern, html_pattern ,particular_pattern;
        Matcher js_matcher,style_matcher,html_matcher,particular_matcher;
        
        //过滤js的正则表达式
        String js_str = "<script.*>X*.*</script>X*";
        //过滤样式的正则表达式
        String style_str = "<style.*>X*.*</style>X*";
        //过滤html标签的正则表达式
        String html_str = "<[^>]+>" ;
        String particular_str = "&gt;|&amp;|&nbsp;|&quot;";
        //处理js标签
        js_pattern = Pattern.compile(js_str, Pattern.CASE_INSENSITIVE);
        js_matcher = js_pattern.matcher(inputString);
        processedString = js_matcher.replaceAll("");
        //处理样式标签
        style_pattern = Pattern.compile(style_str, Pattern.CASE_INSENSITIVE);
        style_matcher = style_pattern.matcher(processedString);
        processedString = style_matcher.replaceAll("");
        //处理html标签
        html_pattern = Pattern.compile(html_str, Pattern.CASE_INSENSITIVE);
        html_matcher = html_pattern.matcher(processedString);
        processedString = html_matcher.replaceAll("");
        
        particular_pattern = Pattern.compile(particular_str,Pattern.CASE_INSENSITIVE);
        particular_matcher = particular_pattern.matcher(processedString);
        processedString = particular_matcher.replaceAll("");
        return processedString;
    }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值