我们几年前开发的 ColdFusion 应用程序与 Twilio 一起记录传入的短信。 UTF-8 消息有效负载使用 NVARCHAR 数据类型保存在 MSSQL 数据库中,并且可以毫无问题地显示在网页上。将 CSV 文件导入第三方 Windows 程序时,只要遇到高位 ASCII 字符,随机错误就会导致导入中止。 我们不想删除数据,但我们也不想将表情符号转换为 HTML 实体或十进制值,因为它们在 HTML 环境之外有些毫无意义。
就在那时我们发现了 email-java java 库。 它自称为“缺少的 Java 表情符号库”,并且确实添加了许多 Java(或 ColdFusion)本身不提供的特定于表情符号的功能。
这是一个 cf-email-java 包装器,可帮助识别、清理和转换 CFML 项目中的表情符号。 (注意:这是我第一次在 Github 中创建项目,而不是仅仅创建一个简单的要点。)
对于 CSV 导出,我们对字符串和消息使用了 parseToAliases 方法,就像我喜欢的那样?已转换为我喜欢 :pizza:.
以下是一些功能示例。
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
https://github.com/JamoCA/cf-emoji-java
以上是emoji-java 的 CFML 包装器(识别、清理和转换表情符号)的详细内容。更多信息请关注PHP中文网其他相关文章!