角色(有两个女人,一个女孩和一个男孩的家庭)编码如下:
U+1F469
WOMAN
,
?U+200D
ZWJ
,
U+1F469
WOMAN
,
U+200D
ZWJ
,
U+1F467
GIRL
,
U+200D
ZWJ
,
U+1F466
BOY
所以它非常有趣地编码; 单元测试的完美目标.然而,斯威夫特似乎不知道如何对待它.这就是我的意思:
"???".contains("???") // true
"???".contains("") // false
"???".contains("\u{200D}") // false
"???".contains("") // false
"???".contains("") // true
Run Code Online (Sandbox Code Playgroud)
所以,斯威夫特说它包含自己(好)和一个男孩(好!).但它说它不包含女人,女孩或零宽度木匠.这里发生了什么事?斯威夫特为什么知道它包含一个男孩而不是女人或女孩?我能理解它是否将它视为一个单一的角色并且只识别它包含它自己,但事实上它有一个子组件,没有其他人困惑我.
如果我使用类似的东西,这不会改变"".characters.first!
.
更令人困惑的是:
let manual = "\u{1F469}\u{200D}\u{1F469}\u{200D}\u{1F467}\u{200D}\u{1F466}"
Array(manual.characters) // ["?", "?", "?", ""]
Run Code Online (Sandbox Code Playgroud)
即使我将ZWJ放在那里,它们也不会反映在字符数组中.接下来是一个小小的说法:
manual.contains("") // false
manual.contains("") // false
manual.contains("") // true
Run Code Online (Sandbox Code Playgroud)
所以我得到了与字符数组相同的行为...这是非常烦人的,因为我知道数组的样子.
如果我使用类似的东西,这也不会改变"".characters.first!
.
Hello world????
Run Code Online (Sandbox Code Playgroud)
????dlrow olleH
Run Code Online (Sandbox Code Playgroud)
我尝试了几种方法,但没有一个给我正确的答案。
这惨败:
Hello world????
Run Code Online (Sandbox Code Playgroud)
这有点有效,但它???
分为 4 个不同的表情符号:
????dlrow olleH
Run Code Online (Sandbox Code Playgroud)
我也尝试了这个问题中的所有答案,但没有一个有效。
有没有办法获得所需的输出?
我有一些字符串,里面有各种不同的表情符号/图像/符号.
并非所有字符串都是英文的 - 其中一些字符串是其他非拉丁语言,例如:
? railway??
? Cats and dogs
I'm on
Apples ?
? Vi sign
? I'm the king ?
Corée ? du Nord ? (French)
gjør at både ?? (Norwegian)
Star me ?
Star ? once more
??? ? (Chinese)
???????? ? (Greek)
another ? sign ?
?????? ?????? ? (Belarus)
? ??? ?????? ? (Hindi)
? ? ? ? Let's get together ?. We shall meet at 12/10/2018 10:00 AM at Tony's.?
Run Code Online (Sandbox Code Playgroud)
......还有更多这些.
我想摆脱所有这些标志/图像,只保留不同语言的字母(和标点符号).
我尝试使用EmojiParser库 …
我正在从FileFormat.Info的搜索中找到特殊字符的Unicode .
某些字符呈现为经典的黑白字形,例如⚠(警告标志\u26A0
或⚠
).这些是首选,因为我可以将CSS样式(如颜色)应用于它们.
其他人正在渲染为更新的卡通表情符号,例如hour(沙漏,\u231B
或⌛
).这些不是优选的,因为我不能完全定型它们.
看来浏览器正在进行此更改,因为我能够在Mac Firefox上看到沙漏字形,而不是Mac Chrome或Mac Safari.
有没有办法强制浏览器显示旧的(单调单调)版本?
更新:看来(从下面的评论)有一个文本显示选择,FE0E
,可用来执行文本VS-表情符号.选择器作为后缀连接到字符的代码上,没有空格,例如⌛︎
HTML十六进制或\u231B\uFE0E
JS.但是,它并没有被所有浏览器(例如Chrome和Edge)所尊重.
嗨,我想做以下事情:
??? unicode = U+1F60A
String emoji = getEmojiByUnicode(unicode)
String text = "So happy "
textview.setText(text + emoji);
Run Code Online (Sandbox Code Playgroud)
在我的textview中得到这个:
很高兴
如何实现'getEmijoByUnicode(unicode)'?
应该是什么类型的'unicode'?(String/char/int ??!)
请注意,我不想使用Drawables!
我需要找出字符串中的字符是否是表情符号.
例如,我有这个角色:
let string = ""
let character = Array(string)[0]
Run Code Online (Sandbox Code Playgroud)
我需要弄清楚那个角色是不是表情符号.
我尝试从MySQL数据库中的服务中保存用户的名称.这些名字可以包含表情符号(仅举例)
搜索了一下后,我发现这个stackoverflow链接到本教程.我按照步骤操作,看起来一切都配置正确.
我有一个数据库(charset和collation设置为utf8mb4(_unicode_ci)),一个名为TestTable的表,也是这样配置的,以及一个"Text"列,以这种方式配置(VARCHAR(191)utf8mb4_unicode_ci).
当我尝试保存表情符号时,我收到一个错误:
Example of error for shortcake ():
Warning: #1300 Invalid utf8 character string: 'F09F8D'
Warning: #1366 Incorrect string value: '\xF0\x9F\x8D\xB0' for column 'Text' at row 1
Run Code Online (Sandbox Code Playgroud)
我能够正确保存的唯一表情符号是太阳☀️
虽然我没有尝试所有这些都是诚实的.
我在配置中缺少什么?
请注意:所有保存测试都不涉及客户端.我使用phpmyadmin手动更改值并保存数据.因此,在服务器正确保存emojis 之后,我将负责正确配置客户端.
另一个旁注:目前,在保存表情符号时,我或者得到上面的错误,或者没有错误,数据Username
将被存储为Username ????
.错误或无错误取决于我保存的方式.当通过SQL语句创建/保存时我用问号保存,当编辑内联时我用问号保存,当使用编辑按钮进行编辑时,我得到错误.
谢谢
编辑1: 好吧所以我认为我发现了问题,但不是解决方案.看起来数据库特定变量没有正确更改.
当我在我的服务器上以root用户身份登录并读出变量(全局)时:
使用的查询:SHOW VARIABLES WHERE Variable_name LIKE 'character\_set\_%' OR Variable_name LIKE 'collation%';
+--------------------------+--------------------+
| Variable_name | Value |
+--------------------------+--------------------+
| character_set_client | utf8mb4 |
| character_set_connection | utf8mb4 …
Run Code Online (Sandbox Code Playgroud) 我试图弄清楚如何在Facebook
应用程序和谷歌Hangouts
应用程序上实现表情符号(表情符号)选择.我查看SoftKeyboard
了Android API示例中的Demo应用程序,但这些表情符号视图的显示看起来并不像SoftKeyboard
.它的外观和行为更像是自定义Dialog
视图.有没有人知道这些是如何实现的?
此外,Unicode是发送表情符号的最佳方式还是有其他选择?我注意到有些Unicode
序列\u1F601
不会渲染相应的表情符号而是显示为1
:
EditText messageInput = (EditText) findViewById(R.id.message_input);
messageInput.getText().append("\u1F601");
Run Code Online (Sandbox Code Playgroud) 我希望允许我的用户将emojis插入文本框.我已经搜索了一个JQuery插件,它允许我给他们一个选择器,如Mac,iOS或Webogram集成的Emojipicker.但我找不到合适的一个,它对所有图标进行排序并显示出来?
有没有可能这样做?
Mac Emojipicker: