輸入框中 禁止輸入表情

2021-09-03 01:20:08 字數 2038 閱讀 3139

最近遇到了乙個需求,就是在設定賬號名稱中禁止輸入表情,就把該知識點整理了一下,記錄以便下次查詢. 可能還有不完善之處,請各位補充。

方法1:此方法個別表情識別不出來   比如我的華為手機 **表情 不能識別

//此方法個別表情識別不出來   比如我的華為手機 **表情 不能識別

//去除表情規則

// \u0020-\\u007e 標點符號,大小寫字母,數字

// \u2e80-\\ua4cf 繁簡中文,日文,韓文 彝族文字

// \uf900-\\ufaff 部分漢字

// \ufe30-\\ufe4f 特殊標點(︴︵︶︷︸︹)

// \uff00-\\uffef 日文 (オカキクケコサ)

// \u2000-\\u201f 特殊字元(‐‑‒–—―‖‗『』‚‛「」„‟)

// 注:對照表

// [^\\u0020-\\u007e\\u00a0-\\u00be\\u2e80-\\ua4cf\\uf900-\\ufaff\\ufe30-\\ufe4f\\uff00-\\uffef\\u2000-\\u201f\r\n]

public static boolean isemoj(string str)

return false;

}

方法2:此方法個別表情識別不出來   比如我的華為手機 **表情 不能識別

//此方法個別表情識別不出來   比如**表情

edt.addtextchangedlistener(new textwatcher()

@override

public void ontextchanged(charsequence s, int start, int before, int count)

if (nocontainsemoji(edt.gettext().tostring()))

}@override

public void aftertextchanged(editable s)

});private boolean nocontainsemoji(string str)

}return false;

}private boolean isemojicharacter(char codepoint)

方法3:此方法個別表情識別不出來   比如我的華為手機 **表情 不能識別

//此方法個別表情識別不出來   比如**表情

public static boolean isemoj2(string substring)

}} else if (substring.length() > 1)

} else else if (0x2b05 <= hs && hs <= 0x2b07) else if (0x2934 <= hs && hs <= 0x2935) else if (0x3297 <= hs && hs <= 0x3299) else if (hs == 0xa9 || hs == 0xae || hs == 0x303d || hs == 0x3030

|| hs == 0x2b55 || hs == 0x2b1c || hs == 0x2b1b

|| hs == 0x2b50) }}

return false;

}

//過濾掉表情 可識別我華為手機 qq裡面的 **表情   edt為輸入框id

edt.setfilters(new inputfilter);

public class emojiexcludefilter implements inputfilter

}return null;}}

輸入框限制輸入表情

前些日子寫專案,測試提出要求要禁止表情的錄入,在uitextfield這個 方法中shouldchangecharactersinrange,只能夠限制鍵盤上的表情不能錄入,但是錄入時聯想上的表情還是能夠錄入,所以最終用了下邊的方法,但是可能還會有問題。究其原因,測試說防止資料庫的表被注入什麼的,但...

div 模擬輸入框,支援輸入表情

1.html結構 div idv clock click emojiclose div class editbox div class edit contenteditable true placeholder 發現乙個好玩的歌房,快來一起玩吧 v on input inputchange even...

輸入框插入表情包

點選我 主要思路 當點選某個元素的時候,讓乙個輸入框,插入指定的值。1.當點選某個元素的時候,應該讓輸入框獲取焦點,因為只有獲得了焦點,才能在裡面輸入值 ie下 document.selection.createrange ff下 var start dthis.selectionstart 獲取焦...