Ueditor更改统计字数与内容保存去除字符实体

Ueditor 默认统计方式为统计字符,今天项目中要求输入英文写作,所以要对单词数进行统计。直接上代码

<script type="text/javascript">  
	//初始化Ueditor
    var ue = UE.getEditor('container', {  
    toolbars: [  
    ['undo', 'redo', 'bold', 'italic', 'underline','rowspacingtop','rowspacingbottom','lineheight','fontfamily','fontsize','justifyleft','justifycenter','justifyright','justifyjustify','fullscreen']  
    ],  
    autoHeightEnabled: false,  
    autoFloatEnabled: true,
    elementPathEnabled:false,
    wordCount:false,//*这是重点 关闭自带的字数统计
    });
    //当Ueditor加载完成后,显示统计字符的div并更改内容
    ue.addListener( 'ready', function( editor ) {
	    //edui1_wordcount div为字符统计的显示区域,关闭字符统计后 display=none 所以要显示
    	$("#edui1_wordcount").show();
    	$("#edui1_wordcount").html("单词统计");
    } );
    //为Ueditor添加键盘监听事件,每次敲击后统计单词数
    ue.addListener('keydown',function()count(ue.getContentTxt())});
    /* 单词统计 */
    function count(str){
        var value=str;
        //标点转换为空格
        value=value.replace(/[\~|\`|\!|\@|\#|\$|\%|\^|\&|\*|\(|\)|\-|\_|\+|\=|\||\\|\[|\]|\{|\}|\;|\:|\"|\'|\,|\<|\.|\>|\/|\?]/g," "); 
        //统计中文个数
        var chinese=value.match(/[\u4e00-\u9fa5]/g);
        //去除中文
        value = value.replace(/[\u4e00-\u9fa5]+/g, " ");
        // 将换行符,前后空格替换为空格
        value = value.replace(/\n|\r|^\s+|\s+$/gi," ");
        // 多个空格替换成一个空格
        value = value.replace(/\s+/gi," ");
        // 更新计数
        var length = 0;
        var match = value.match(/\s/g);
        if (match) {
            length = match.length + 1;
        } else if (value) {
            length = 1;
        }
        length = length+(chinese?chinese.length:0);
        $("#edui1_wordcount").html("您总共输入了"+length+"个单词");
    }
    /* 单词统计 */
</script> 

统计单词部分写的不够完善,请自行忽略

下面是java对Ueditor富文本的处理

主要两部分:
1.去除html标签,百度上一大堆。
2.处理html中的字符实体例如:
在这里插入图片描述
可以使用
org.apache.commons.lang3.StringEscapeUtils.unescapeHtml4(html);实体名称转为html标签(“& l t;”→“<”)
org.apache.commons.lang3.StringEscapeUtils.escapeHtml4(html);html标签转为实体名称(“<”→“& l t;”)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值