满意答案

jdubysct

2016.03.15

采纳率:43%    等级:8

已帮助:863人

解决方案

对于字符串处理,首选就是正则表达式去处理,而在android系统中可以自定义InputFilter去过滤需要处理掉的字符串,代码如下

InputFilter emojiFilter = new InputFilter ( ) {

@Override

public CharSequence filter ( CharSequence source , int start , int end , Spanned dest , int dstart ,

int dend ) {

}

} ;

随后我查阅了 emoji 的wikipedia与 Github ,从中提取出表情的一个大概unicode范围,由于Java可以直接对unicode进行匹配,这样我们可以很省事直接写出Pattern即可,代码如下

InputFilter emojiFilter = new InputFilter ( ) {

Pattern emoji = Pattern . compile (

"[\ud83c\udc00-\ud83c\udfff]|[\ud83d\udc00-\ud83d\udfff]|[\u2600-\u27ff]" ,

Pattern . UNICODE_CASE | Pattern . CASE_INSENSITIVE ) ;

@Override

public CharSequence filter ( CharSequence source , int start , int end , Spanned dest , int dstart ,

int dend ) {

Matcher emojiMatcher = emoji . matcher ( source ) ;

if ( emojiMatcher . find ( ) ) {

return "" ;

}

return null ;

}

} ;

基本上这样就能过滤掉emoji表情了

00分享举报

android 过滤emoji表情符号,android怎样过滤字符串中的emoji表情相关推荐

  1. Java代码判断字符串中是否含有表情

    最近在发微信公众号模版消息时遇到一个问题,如果用户的nickname中有表情,那么消息的字体颜色就会发生变化,像这样: 这个问题应该是微信的问题,所以我们不能解决掉这个bug,只能等腾讯爸爸来修复.唯 ...

  2. 如何删除 字符串中的 emoji 表情符号

    在爬取数据时候遇到昵称中有 emoji  符号的在存储数据库的时候会遇到报错,这是因为 emoji 占用四个字符的大小,如果昵称很重要,必须保存完整昵称的,需要修改数据库的设置即可 如果保存完整的昵称 ...

  3. python 清除字符串中的 emoji 表情

    https://pypi.org/project/emoji/ pip install emoji 字符串中间有 emoji 表情,替换掉. text = "

  4. uniapp 判断字符串中是否包含表情

    var emouji = /\uD83C[\uDF00-\uDFFF]|\uD83D[\uDC00-\uDE4F]/g;if(emouji.test('需要被判断的字符串')){console.log ...

  5. 过滤字符串中的Emoji表情

    iOS 5.0之前,苹果都是采用3个字节来承接 emoji 表情,Java 的普通 char 可以支持显示.但 iOS 5.0 之后, 苹果升级了系统自带的 emoji 表情输入法,用的 Unicod ...

  6. Android和Java检查字符串中是否含有表情符并和谐(替换)

    最近项目里读取文本的内容里含有了表情符,传递给后端后无法存入数据库,虽然现在后端修复了,但是我还是想自己过滤,百度了一下发现网上csdn有大量此类代码但是几乎都有错误在里面不知道是不是故意有人为之,特 ...

  7. 匹配表情emoji 正则_php正则表达式过滤emoji表情符号

    php正则表达式过滤emoji表情符号2017-08-23 21:41 现在中国有手机的人用微信的应该占了90%吧!小编没事的时候也是天天玩微信. 不过不是发朋友圈这些,而是上面有很多感兴趣的文章. ...

  8. emoji表情符号有时不能正常显示的问题的解决方案

    1.emoji表情符号应用场景及遇到的问题 emoji表情符号使用的场景:前端页面将用户带有emoji表情符号的留言发送给后端保存后,前端页面从后端获取留言再次展现.但是到再次从后端获取留言展示时,e ...

  9. MySQL 字符串删除表情符_PHP处理字符中的emoji表情(判断/移除/存储)

    目录判断字符串中是否含有 emoji 表情 移除字符串中的 emoji 表情 含有 emoji 表情的字符串在 MySQL 中的储存 utf-8 编码的 emoji 表情或者某些特殊字符占用 4 个字 ...

最新文章

  1. JAVA实现包含main函数的栈问题(《剑指offer》)
  2. Solr字段类型field type的定义
  3. javaScript字符串应用
  4. Codeforces Round #703 (Div. 2) D . Max Median 二分 +思维
  5. 量子计算机是否存在相对论,潘建伟团队再登Science:寻找广义相对论与量子力学的桥梁...
  6. grad在python什么模块_深度学习(Deep Learning)基础概念1:神经网络基础介绍及一层神经网络的python实现...
  7. ROBOTS.TXT屏蔽笔记、代码、示例大全
  8. 解决:java.lang.IllegalStateException: ApplicationEventMulticaster not initialized
  9. mysql5.6下载linux云盘,mysql for linux
  10. 网页文件是用HTML语言编写的,用HTML语言制作简单的网页
  11. 彻底卸载win10 1903自带edge 浏览器
  12. 照片转3d模型_云从科技3D人体重建技术刷新3项纪录!仅凭照片即可生成精细模型...
  13. ThoughtWorks面试经历——武汉java开发
  14. 计算机桌面下方任务栏图标不见了,任务栏显示桌面图标不见怎么办
  15. 夯实数据库根科技,提升企业数智化转型的“人效”和“能效” | 数据猿
  16. ARM Linux ELF加壳方案
  17. 基于MATLAB的图像压缩感知 算法的实现
  18. tomcat重启警告:Abandoned connection cleanup thread)
  19. 爬虫初上手之爬取QQ音乐!
  20. PHY驱动调试之 --- PHY控制器驱动(二)

热门文章

  1. mongodb java报授权,mongoDB 3.0用户创建与授权
  2. Arm架构下VUE环境的安装
  3. 【hdu2089】不要62
  4. Azure SQL 数据库:服务级别与性能问答
  5. 简单banner制作
  6. Attempt to write to a read-only database Sqlite
  7. linux inputuevent使用
  8. cloudstack java api_CloudStack API编程指引
  9. docker代理设置ssl证书_docker - 设置HTTP/HTTPS 代理
  10. c语言中二维数组中产生随机数,C语言中是如何进行随机数生成的[多图]