网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

Android中怎么利用正则表达式过滤emoji表情

Android中怎么利用正则表达式过滤emoji表情?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

专业领域包括成都网站设计、做网站、商城网站制作、微信营销、系统平台开发, 与其他网站设计及系统开发公司不同,创新互联公司的整合解决方案结合了帮做网络品牌建设经验和互联网整合营销的理念,并将策略和执行紧密结合,为客户提供全网互联网整合方案。

原因:UTF-8编码有可能是两个、三个、四个字节。Emoji表情是4个字节,而MySQL的utf8编码最多3个字节,所以数据插不进去

讨论了一些方案,最后还是前端来做过滤,如果是Emoji表情直接干掉,因此也找了一些正则表达式,记录下

只过滤一Emoji表情:

[^\u0000-\uFFFF]

过滤Emoji表情和颜文字:

[\\ud83c\\udc00-\\ud83c\\udfff]|[\\ud83d\\udc00-\\ud83d\\udfff]|[\\u2600-\\u27ff]|[\\ud83e\\udd00-\\ud83e\\uddff]|[\\u2300-\\u23ff]|[\\u2500-\\u25ff]|[\\u2100-\\u21ff]|[\\u0000-\\u00ff]|[\\u2b00-\\u2bff]|[\\u2d06]|[\\u3030]

写了个静态方法使用:

/** 
   * Emoji表情校验 
   * 
   * @param string 
   * @return 
   */ 
  public static boolean isEmoji(String string) { 
    //过滤Emoji表情 
    Pattern p = Pattern.compile("[^\\u0000-\\uFFFF]"); 
    //过滤Emoji表情和颜文字 
    //Pattern p = Pattern.compile("[\\ud83c\\udc00-\\ud83c\\udfff]|[\\ud83d\\udc00-\\ud83d\\udfff]|[\\u2600-\\u27ff]|[\\ud83e\\udd00-\\ud83e\\uddff]|[\\u2300-\\u23ff]|[\\u2500-\\u25ff]|[\\u2100-\\u21ff]|[\\u0000-\\u00ff]|[\\u2b00-\\u2bff]|[\\u2d06]|[\\u3030]"); 
    Matcher m = p.matcher(string); 
    return m.find(); 
  }

看完上述内容,你们掌握Android中怎么利用正则表达式过滤emoji表情的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联行业资讯频道,感谢各位的阅读!


文章标题:Android中怎么利用正则表达式过滤emoji表情
分享路径:http://bjjierui.cn/article/pcjcci.html

其他资讯