Maison >interface Web >js tutoriel >Comment détecter les émojis en JavaScript à l'aide de l'échappement de propriété Unicode ?

Comment détecter les émojis en JavaScript à l'aide de l'échappement de propriété Unicode ?

DDD
DDDoriginal
2024-10-25 05:54:02482parcourir

How Can You Detect Emojis in JavaScript Using Unicode Property Escape?

Détection des émojis en JavaScript à l'aide de l'échappement de propriété Unicode

Introduction

La détection des émojis en JavaScript peut être un défi en raison de la diversité de leurs caractères. Cependant, les navigateurs modernes offrent une solution robuste utilisant l'échappement des propriétés Unicode. Cette approche permet une détection précise des emojis en fonction de leur catégorie au sein de la norme Unicode.

Utilisation de la propriété p{Emoji} Escape

La propriété p{Emoji} escape correspond à n’importe quel caractère appartenant à la catégorie Emoji dans Unicode. Cela inclut :

  • Emoji : ?, ?, ?
  • Émoticônes : :)

Utilisation de la propriété d'échappement P{Emoji}

Pour détecter les non-emojis, utilisez la propriété d'échappement P{Emoji}. Cela correspond à tout caractère qui n'appartient pas à la catégorie Emoji, tel que :

  • Lettres : a, b, z
  • Chiffres : 0, 1, 2

Exemple de code

Voici un exemple qui montre comment détecter les emojis à l'aide de l'échappement de propriété Unicode :

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

Utilisation de la propriété d'échappement p{Extended_Pictographic}

Pour faire correspondre spécifiquement les caractères qui sont généralement compris comme des emojis, utilisez la propriété d'échappement p{Extended_Pictographic}. Cela évite de faire correspondre des caractères comme des chiffres ou des signes de ponctuation qui sont également dans la catégorie Emoji.

Exemple de code

<code class="js">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>

Souvenez-vous du drapeau u

Il est important d'inclure le drapeau u à la fin de votre expression régulière pour activer la prise en charge d'Unicode. Cet indicateur garantit que les échappements de propriétés Unicode sont correctement reconnus.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn