首頁  >  文章  >  web前端  >  如何使用正規表示式可靠地偵測和識別 JavaScript 中的表情符號?

如何使用正規表示式可靠地偵測和識別 JavaScript 中的表情符號?

Patricia Arquette
Patricia Arquette原創
2024-10-25 03:30:29993瀏覽

How can I reliably detect and identify emojis in JavaScript using regular expressions?

使用正規表示式辨識JavaScript 中的表情符號

由於其unicode 表示形式,在JavaScript 中偵測表情符號可能具有挑戰性。雖然先前建議的方法依賴 mumeric 範圍,但這種方法不可靠且不靈活。

幸運的是,現代瀏覽器現在支援 Unicode 屬性轉義。這樣可以根據表情符號的 unicode 類別進行精確匹配。具體來說,「p{Emoji}」屬性轉義匹配所有表情符號。

但是,需要注意的是,0123456789#* 和類似字元被正式歸類為表情符號。為了避免匹配這些字符,可以使用“p{Extended_Pictographic}”屬性轉義,它的目標字符通常被理解為表情符號。

為了確保相容性,請在常規末尾使用「u」標誌表達式。

範例:

<code class="javascript">console.log(
  /\p{Emoji}/u.test('flowers'), // false :)
  /\p{Emoji}/u.test('flowers ???'), // true :)
  /\p{Emoji}/u.test('flowers 123'), // true :( 
)

console.log(
  /\p{Extended_Pictographic}/u.test('flowers'), // false :)
  /\p{Extended_Pictographic}/u.test('flowers ???'), // true :)
  /\p{Extended_Pictographic}/u.test('flowers 123'), // false :)
)</code>

以上是如何使用正規表示式可靠地偵測和識別 JavaScript 中的表情符號?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn