Maison  >  Article  >  Java  >  Wrapper CFML pour emoji-java (identifier, désinfecter et convertir les emojis)

Wrapper CFML pour emoji-java (identifier, désinfecter et convertir les emojis)

DDD
DDDoriginal
2024-09-13 06:28:14374parcourir

CFML wrapper for emoji-java (identify, sanitize & convert emojis)

Une application ColdFusion que nous avons développée il y a quelques années a fonctionné avec Twilio pour enregistrer les messages texte entrants. Les charges utiles des messages UTF-8 ont été enregistrées dans une base de données MSSQL à l'aide du type de données NVARCHAR et ont pu être affichées sur des pages Web sans aucun problème. Lors de l'importation d'un fichier CSV dans un programme Windows tiers, une erreur aléatoire entraînait l'abandon de l'importation chaque fois qu'elle rencontrait un caractère ASCII élevé. Nous ne voulions pas supprimer les données, mais nous ne voulions pas non plus convertir les émojis en entités HTML ou en valeurs décimales, car ils n'auraient aucun sens en dehors d'un environnement HTML.

C'est à ce moment-là que nous avons découvert la bibliothèque java email-java. Il se présente comme « la bibliothèque d'emojis manquante pour Java » et ajoute réellement de nombreuses fonctionnalités spécifiques aux emojis qui ne sont pas disponibles nativement en Java (ou ColdFusion).

Voici un wrapper cf-email-java pour aider à identifier, nettoyer et convertir les emojis dans les projets CFML. (REMARQUE : c'est la première fois que je crée un projet dans Github plutôt que de simplement créer un simple résumé.)

Pour l'export CSV, nous avons utilisé la méthode parseToAliases sur les chaînes et les messages comme j'aime ? ont été convertis en j'aime :pizza:.

Voici quelques exemples de fonctionnalités.

emojijava.isEmoji('❤️');       // true
emojijava.isEmoji('I ❤️ ?');  // false

emojijava.containsEmoji('I ❤️ ?');  // true

emojijava.isOnlyEmojis('I ❤️ ?');   // false
emojijava.isOnlyEmojis('? ❤️ ?');  // true

emojijava.parseToAliases('I like ?');   // I like :pizza:

emojijava.parseToHtmlDecimal('I ❤️ ?');   // I ❤️ 🍕

emojijava.parseToHtmlHexadecimal('I ❤️ ?');   // I ❤️ 🍕

emojijava.removeAllEmojis('I ❤️ ?');   // I

emojijava.removeAllEmojisExcept('I ❤️ ?', "pizza");   // I  ?

emojijava.removeEmojis(text, "pizza");  // I ❤️

emojijava.removeEmojis('I ❤️ ?', "[emoji]");  // I [emoji] [emoji]

emojijava.extractEmojis('I ❤️ ?');  // I ["❤️", "?"]
emojijava.extractEmojis('I ❤️ ?', true);  // an array of structs w/emoji data

Projet GitHub : cf-emoji-java

https://github.com/JamoCA/cf-emoji-java

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