java 替换掉emoji表情

2021-12-08 09:19:36 浏览数 (2)

今天做搜索功能的时候发现用户提交的emoji的符号上来搜索,导致mysql数据库中的字段like的时候发生字符集类型不匹配的错误,可能对最新的emoji支持的也不是很全面,代码如下:

代码语言:javascript复制
public static String filterEmoji(String source) {  
     if(source != null)
     {
         Pattern emoji = Pattern.compile ("[ud83cudc00-ud83cudfff]|[ud83dudc00-ud83dudfff]|[u2600-u27ff]",Pattern.UNICODE_CASE | Pattern . CASE_INSENSITIVE ) ;
         Matcher emojiMatcher = emoji.matcher(source);
         if ( emojiMatcher.find()) 
         {
             source = emojiMatcher.replaceAll("");
             return source ; 
         }
     return source;
    }
    return source;  
 }

0 人点赞