求助,'𝑀𝑏𝑎𝑘𝑢𝑛𝑑𝑎 𝑎𝑙𝑒𝑥' 是什么属于字符?怎么将它转换成正常的字符

2021-08-13 15:59:18 +08:00
 vvong
RT,系统最近接收到一些这种输入,第三方接口无法识别,导致处理失败,有 v2er 知道这种字符是怎么输入或者转换的吗
1302 次点击
所在节点    问与答
13 条回复
creanme
2021-08-13 16:03:04 +08:00
unicode? 不知道怎么转
XiLingHost
2021-08-13 16:03:06 +08:00
base64
1423
2021-08-13 16:08:43 +08:00
wangkun025
2021-08-13 16:08:44 +08:00
第三方处理不了 utf8 的话,就没什么办法。
这个就是 utf8,第一个字符 Unicode number 应该是 U+1D440
learningman
2021-08-13 16:08:56 +08:00
这些是某些小语言里面的字体,长得跟英文像,被拿来当艺术字了。
这个没有直接转换的办法,你只能自己维护一个映射列表。我觉得干脆禁止更干脆一点。
如果你要问这是什么编码的话,那只能说只要你能看到,那就肯定 Unicode 。
wangkun025
2021-08-13 16:10:55 +08:00
这个没法转换的。类似于把一个中文的字符转换成英文,本质上是无法转换的。
让第三方接受 utf8 是正途。
1423
2021-08-13 16:14:15 +08:00
还挺有意思的,试一下效果

Sans-serif bold italic symbols
𝘼𝘽𝘾𝘿𝙀𝙁𝙂𝙃𝙄𝙅𝙆𝙇𝙈𝙉𝙊𝙋𝙌𝙍𝙎𝙏𝙐𝙑𝙒𝙓𝙔𝙕𝙖𝙗𝙘𝙙𝙚𝙛𝙜𝙝𝙞𝙟𝙠𝙡𝙢𝙣𝙤𝙥𝙦𝙧𝙨𝙩𝙪𝙫𝙬𝙭𝙮𝙯

Dotless symbols
𝚤𝚥

Double-struck digits
𝟘𝟙𝟚𝟛𝟜𝟝𝟞𝟟𝟠𝟡

Double-struck symbols
𝔸𝔹𝔻𝔼𝔽𝔾𝕀𝕁𝕂𝕃𝕄𝕆𝕊𝕋𝕌𝕍𝕎𝕏𝕐𝕒𝕓𝕔𝕕𝕖𝕗𝕘𝕙𝕚𝕛𝕜𝕝𝕞𝕟𝕠𝕡𝕢𝕣𝕤𝕥𝕦𝕧𝕨𝕩𝕪𝕫
vvong
2021-08-13 16:26:01 +08:00
@1423
@wangkun025
@learningman
@wangkun025
@1423
当在 google 中搜索这个单词的时候 它搜索的页面是正常的 字母 所以想知道这中间是如何处理的
hahastudio
2021-08-13 16:32:42 +08:00
Unicode normalization
013231
2021-08-13 16:36:47 +08:00
標題中的字母屬於“Mathematical Alphanumeric Symbols”. 將其轉換為“正常”字符的行為叫“Unicode Normalization”.
以 Python 為例, 可以使用標準庫中的 unicodedata.normalize 做這樣的轉換.

>>> import unicodedata
>>> print(unicodedata.normalize('NFKD', '𝑀𝑏𝑎𝑘𝑢𝑛𝑑𝑎 𝑎𝑙𝑒𝑥'))
Mbakunda alex
hahastudio
2021-08-14 10:26:01 +08:00
说起来,这个帖子的 tag 是怎么回事,是分词 bug 了么 @livid
learningman
2021-08-14 12:12:13 +08:00
@hahastudio 应该是,估计是 4 字节 unicode 被当成 3 字节处理了
Conty
2021-08-16 08:00:38 +08:00
我倒是经常收到类似编码的垃圾邮件,subject 就是这样的,让你能读懂,但是又没法用关键词过滤。

大家有啥好办法吗?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/795610

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX