问题描述
有一次复制朋友圈内容进行修改出现顺序错乱的现象,就像下面这段内容,您可以尝试删除和插入部分内容,在修改的过程中文字顺序跳来跳去,越改越乱,非常神奇。
原因分析
出于好奇,我把内容粘贴到编辑器 Sublime Text 里面看了下,发现了端倪,如下图所示:
发现文字中间有一些奇怪的字符,这些字符是什么呢?
其实这几个字符属于格式字符,是因为一些阿拉伯国家的文字阅读顺序是从右往左排列的,所以这些字符是用来控制文字排列方向的,具体可以参考 Unicode 文字方向。
特殊字符如下:
202A:从左至右嵌入
202B:从右至左嵌入
202C:退出方向性格式化
202D:从右至左强制
202E:从左至右强制
为此我做了个小工具,可以自动给一段文字添加这种神奇字符,生成一段可防修改的内容,界面如下:
如何破解
- 有些清除这些特殊字符的在线工具,可以自行百度
- 使用ocr文字识别,将文字截图然后转换成文字,然后再进行修改,比如 iphone 用户,可以直接截图保存到相册,然后打开相册,长按图片,选择识别文字,然后就可以复制文字了,然后再进行修改。这个方法让我想到了《三体》里的降维打击。