java 过滤微信昵称_java过滤微信昵称特殊字符
EmojiFilter.filterEmoji(weiUserInfo.getNickname());
/**
* 过滤emoji表情与非emoji表情
* @author suzhenwei
*
*/
public class EmojiFilter {
/**
* 过滤emoji 或者 其他非文字类型的字符
* @param source 需要过滤的字符串
* @return
*/
public static String filterEmoji(String source) {
if (!containsEmoji(source)) {
return source;
}
StringBuilder buf = null;
int len = source.length();
for (int i = 0; i < len; i++) {
char codePoint = source.charAt(i);
if (notisEmojiCharacter(codePoint)) {
if (buf == null) {
buf = new StringBuilder(source.length());
}
buf.append(codePoint);
}
}
if (buf == null) {
return "";
} else {
if (buf.length() == len) {
buf = null;
return source;
} else {
return buf.toString();
}
}
}
/**
* 检测是否有emoji字符
* @param source 需要判断的字符串
* @return 一旦含有就抛出
*/
public static boolean containsEmoji(String source) {
int len = source.length();
for (int i = 0; i < len; i++) {
char codePoint = source.charAt(i);
if (!notisEmojiCharacter(codePoint)) {
return true;
}
}
return false;
}
/**
* 非emoji表情字符判断
* @param codePoint
* @return
*/
public static boolean notisEmojiCharacter(char codePoint) {
return (codePoint == 0x0) || (codePoint == 0x9) || (codePoint == 0xA) || (codePoint == 0xD)
|| ((codePoint >= 0x20) && (codePoint <= 0xD7FF)) || ((codePoint >= 0xE000) && (codePoint <= 0xFFFD))
|| ((codePoint >= 0x10000) && (codePoint <= 0x10FFFF));
}
}
java 过滤微信昵称_java过滤微信昵称特殊字符相关推荐
- java 微信请求_Java web微信请求拦截器(微信公众号开发)
Java web微信请求拦截器(微信公众号开发),获取微信用户信息. package com.mvc.interceptor; import com.alibaba.fastjson.JSONObje ...
- java 过滤微信昵称_java过滤微信昵称emoji表情与非emoji的问题解决方法
import java.util.regex.Matcher; import java.util.regex.Pattern; /** * 过滤emoji表情与非emoji表情 * @author h ...
- java微信机器人_Java版微信机器人代码
Java版微信机器人代码 (2014-07-31 09:47:58) 标签: 软件测试 java 上海泽众软件 package com.eiyoung.wechat.web.controller; i ...
- java rmi 推送_java 企业微信推送消息 示例源码
[实例简介] [实例截图] [核心代码] package com.kp.qy.web; import java.io.UnsupportedEncodingException; import java ...
- java 微信模板_java开发微信模板消息推送
概述 微信公众平台开始支持前端网页,大家可能看到很多网页上都有分享到朋友圈,关注微信等按钮,点击它们都会弹出一个窗口让你分享和关注,这个是怎么实现的呢?今天就给大家讲解下如何在微信公众平台前端网页上添 ...
- java后台过滤特殊表情_java过滤表情图标
package com.yt.util; import java.util.regex.Matcher; import java.util.regex.Pattern; import org.apac ...
- java 创建自定义菜单_Java实现微信公众号自定义菜单的创建方法示例
本文实例讲述了Java实现微信公众号自定义菜单的创建方法.分享给大家供大家参考,具体如下: 开发公众号的时候可能需要给一些自定义菜单添加事件,比如点击某菜单然后服务端给用户推送信息. 我们也可以使用微 ...
- JAVA 实现朋友圈_Java实现微信公众平台朋友圈分享功能详细代码
其实分享的方法在微信官网有较为详细的文档说明,现就其中一些比较绕的步骤进行总结,有问题随时交流哈. 首先微信其实已经自带分享到朋友圈,朋友,qq空间等功能,对于开发微信专门提供了一个接口,可以根据需要 ...
- java 红包接口开发_java调用微信现金红包接口的心得与体会总结
这几天看了下之前写的有关微信支付的博客,看的人还是挺多的,看了下留言不知道是因为博客写的不够细还是什么情况,大多都找我要源码,我觉得吧程序员还是需要有这么一个思考的过程,因此没直接给源码,俗话说&qu ...
- java微信红包_Java模拟微信发红包(普通红包、拼手气红包)
假设红包总额M元,分给N个人. 满足条件: 如果是普通红包,每个人获得的金额都一样: 如果是拼手气红包,则有所区别,但不能金额过于离谱,比如第一个获得的太多,以至于后来的人都几乎没得分. 注意点: 1 ...
最新文章
- 一种快速统计SQL Server每个表行数的方法
- java cometd_关于cometd的一些经验总结-java端
- 让FFMPEG支持实时流“伴随”转码
- 地址里面写转某快递会转吗_到付邮费骗局还在继续,合肥某公司中招!商标申请人要警惕!...
- 【.net 深呼吸】自定义应用程序配置节
- 这两天有点热吆,star直线上涨!~Jeecg Boot
- sarscape 将dem文件转化成stl_STL文件,一种前处理网格划分技术??
- 【原创】基于NIOS II的ADS1256 SPI驱动
- NDoc使用简要手册 及中文支持(转)
- SQL的「悲观锁定」与「乐观锁定」
- Python中list.pop()的使用
- [javase学习笔记]-8.8 构造代码块
- 今天再发一下热门关键字,看看能否推广网站
- win10电脑任务栏右侧小图标消失解决方法
- CVPR 2020 论文大盘点-去雨去雾去模糊篇
- tlwr840n虚拟服务器,TP-Link TL-WR840N 300M无线路由器设置
- 1.1UiPath下载安装与激活
- 软件测试工作流程规范
- CommonUtils 工具类
- arm64的ioremap_ARMv8 内存管理架构.学习笔记
热门文章
- matlab 线性拟合polyfit_Matlab 线性拟合 非线性拟合_matlab非线性拟合函数
- 鼠标移上提示框 提示框不消失
- Win10 将 Bookmarks 的书签恢复到 Chrome
- 在夕阳再晨的日子里(二)----掌管市场部的岁月之合作团队与社区的拓展
- 有什么软件测试固态硬盘,SSD差距有多大?两款主流NVMe固态硬盘测试,一看就包懂...
- RAID磁盘阵列与配置
- UIAutomator2常用类之UiObject2
- 学习心得 Tianmao 篇 RecyclerView.Adapter 我自己的使用理解(类组合模式)
- Class Not Found 的错误解决
- Linux内核子系统---内存管理子系统、进程管理子系统