分享一个转义emjoy表情的方法

= =忘了原文链接了,sorry。


publicstatic String filterEmoji(String source) { 
         if(source != null)
         {
             Pattern emoji = Pattern.compile ("[\ud83c\udc00-\ud83c\udfff]|[\ud83d\udc00-\ud83d\udfff]|[\u2600-\u27ff]",Pattern.UNICODE_CASE | Pattern . CASE_INSENSITIVE ) ;
             Matcher emojiMatcher = emoji.matcher(source);
             if( emojiMatcher.find())
             {
                 source = emojiMatcher.replaceAll("*");
                 returnsource ;
             }
         returnsource;
        }
        returnsource; 
     }


替换成*

数据库 类型为utf-8mb4是能存的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
之前看过一个帖子 [宇宙最强]编码转换/解决易语言 不能显示字符(包括emoji)https://bbs.125.la/forum.php?mod=viewthreadtid=14254478 该模块用于emoji编码转换,不过略有缺陷,参考其结构进行改造,精简 emoji表情的编码android和ios两种操作系统的使用的码元不一样,本模块实现同时兼容两种系统的emoji编码 原理: VX客户Duan使用的是unicode编码(utf-16le),检测出emoji表情字符或易不能显示的字符,对其使用UCS-4进行编码(使用易自带的编码转换库) 示例: 原始文本: android数据:{ 4, 226, 100, 0, 97, 0, 42, 227, 118, 86, 62, 216, 129, 221, 82, 224, 98, 86, 98, 86, 80, 224, 60, 216, 8, 223, 62, 216, 37, 221, 53, 0, 53, 0, 52, 0, 62, 216, 32, 221, 87, 93, 244, 78, 51, 109, 40, 98, 62, 216, 36, 221, 53, 0, 54, 0, 106, 0, 104, 0, 102, 0, 70, 226, 106, 0, 104, 0, 102, 0, 100, 0, 75, 226, 60, 216, 245, 221, 60, 216, 249, 221, 17, 229, 168, 88, 92, 149, 60, 216, 248, 221, 60, 216, 236, 221, 60, 216, 225, 223, 253, 78, 80, 91, 177, 148, 60, 216, 220, 223, 201, 98, 201, 98, 228, 136, 49, 0, 50, 0, 51, 0 } android编码后:[u+E204]da[u+E32A]噶[u+1F981][u+E052]噢噢[u+E050][u+1F308][u+1F925]554[u+1F920]嵗仴洳戨[u+1F924]56jhf[u+E246]jhfd[u+E24B][u+1F1F5][u+1F1F9][u+E511]墨镜[u+1F1F8][u+1F1EC][u+1F3E1]份子钱[u+1F3DC]拉拉裤123 ios数据:{ 61, 216, 159, 220, 100, 0, 97, 0, 61, 216, 153, 220, 118, 86, 62, 216, 129, 221, 61, 216, 54, 220, 98, 86, 98, 86, 61, 216, 47, 220, 60, 216, 8, 223, 62, 216, 37, 221, 53, 0, 53, 0, 52, 0, 62, 216, 32, 221, 87, 93, 244, 78, 51, 109, 40, 98, 62, 216, 36, 221, 53, 0, 54, 0, 106, 0, 104, 0, 102, 0, 79, 38, 106, 0, 104, 0, 102, 0, 100, 0, 206, 38, 60, 216, 245, 221, 60, 216, 249, 221, 60, 216, 234, 221, 60, 216, 248, 221, 168, 88, 92, 149, 60, 216, 248, 221, 60, 216, 236, 221, 60, 216, 225, 223, 253, 78, 80, 91, 177, 148, 60, 216, 220, 223, 201, 98, 201, 98, 228, 136, 49, 0, 50, 0, 51, 0 } ios编码后:[u+1F49F]da[u+1F499]噶[u+1F981][u+1F436]噢噢[u+1F42F][u+1F308][u+1F925]554[u+1F920]嵗仴洳戨[u+1F924]56jhf[u+264F]jhfd[u+26CE][u+1F1F5][u+1F1F9][u+1F1EA][u+1F1F8]墨镜[u+1F1F8][u+1F1EC][u+1F3E1]份子钱[u+1F3DC]拉拉裤123

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值