在我的混合 Android/Cordova 应用程序中,我希望允许用户将表情符号与描述性“句柄”/名称相关联。我发现在 Android 8+ 中默认的 HTML 输入框 - 请记住这是一个混合应用程序,因此 UI 实际上是直接从 Chrome 派生的 WebView - 可以简单地切换到表情符号键盘并选择一个表情符号。我的理解是这些表情符号来自谷歌的 Noto 字体项目。我希望用户能够用于输入表情符号 + 句柄的格式是
handle
其中句柄必须是字母数字。使用正则表达式测试字母数字部分和前面的空格不是问题。但是,我还想检查前两个字节是否是表情符号(不是强制性的)。再一次,这可以通过将前两个字符设置为 来完成userhandle.charCodeAt(0|1)。
要检查返回的数字的有效性,我需要知道什么构成了有效的 Noto 字体 Emoji 代码。 本文似乎建议所有有效的表情符号都应将 0xF09fF or0xE29C` 作为字符 0 处的值 - 为了简单起见,我将忽略该资源中列出的三字节表情符号无效。
但是,在我实施此之前,我想知道 - 是否有一种既定的方法来验证我在这里不知道的 Emoji unicode?