您的位置:首页 > 移动开发 > Android开发

【Android】【输入校验】输入框(EditText)过滤 Emoji 表情

2015-09-29 18:09 441 查看
import java.util.regex.Matcher;
import java.util.regex.Pattern;

import android.text.InputFilter;
import android.text.Spanned;
import android.util.Log;

public class EmojiFilter implements InputFilter {

private static final String TAG = "EmojiFilter";

private Pattern mEmojiPattern = 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 = mEmojiPattern.matcher (source) ;

if (emojiMatcher.find( )) {
Log.d(TAG, "source: " + source.toString() + " is match.");
return "";
}
return source;
}

}

------

EditText.setFilters(new InputFilter[]{new EmojiFilter()})
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: