Unicode字符:U+202E、U+2066、U+2069 (记录)

2022_03_29

三个Unicode编码

1.E280AE:从右往左强制符

对于这个特殊字符,它是Unicode编码U+202E转UTF-8对应的十六进制编码

css代码:\202E

它的作用就是:根据内存顺序从右至左显示字符

测试:

if __name__ == "__main__":
   print("Hello" + u"\u202e" + "World")

结果:


如上图所示,从左往右拖动光标,光标还是按照helloworld的顺序,而不是hellodlrow。复制出来为:Hello‮Wor

2.E281A6

对于这个特殊字符,它的Unicode编号为:U+2066

作用:与\u202E配合,\u202E表示字符从左到右显示,\u2066表示“字符从左到右显示”在此处结束,简单来说就是\u2066后面的字符正常显示,不受\u202E影响

测试1:没有E281A6(\u2066)

if __name__ == "__main__":
   print("Hello" + u"\u202e" + "World" + "hai" )

结果:

测试2:有E281A6(\u2066)

if __name__ == "__main__":
   print("Hello" + u"\u202e" + "World" + u"\u2066" + "hai" )

结果:

测试3:空格(只是我自己比较疑惑)

if __name__ == "__main__":
   print("Hello" + u"\u202e" + "World " + u"\u2066" + "hai" ) # world后面有空格

结果:

if __name__ == "__main__":
   print("Hello" + u"\u202e" + "World" + u"\u2066" + "hai " ) # hai后面有空格

if __name__ == "__main__":
   print("Hello" + u"\u202e" + "World" + "hai " ) # hai后面有空格

好像最后一个字符串中有空格就不会被放到前面

3.E281A9

这个字符的Unicode编号为:U+2069

作用:作为RLI、LRI、FSi翻转结束的标识

一道题的解释:

输出:

只阐述我的理解,不保证对错:

计算机到 1 处,知道后面(" " + u"\u202e" + ( u"\u2066" + "World" + u"\u2069" + u"\u2066" + "hai"))要从右往左显示;到 2 处,知道后面(" " + u"\u202e" + u"\u2066" + ( "World" + u"\u2069" + u"\u2066" + "hai" ) )要从左往右显示,就正常显示 3 World;到 4 处,4 只是把 2 给停掉了,1 还没停 (验证如下图1);到5处,计算机知道要把 6 从左到右显示,就正常显示 6 hai;最后,由于 1 的作用,World(一个整体)和hai(一个整体)从右到左显示为haiWorld

图1:没有上面的 5 ,hai还是从右往左显示

qcuqcq.png

参考链接:
https://mp.weixin.qq.com/s/lo2AiEloACLtCn2Ncle33A

posted @   konglong  阅读(2130)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
点击右上角即可分享
微信分享提示