哪些Unicode字符是不可见的,但可能会意外粘贴?

与U + 200E一起,这是一群在文本中做有趣工作的朋友,这些文本可能与阿拉伯语,波斯语,乌尔都语,希伯来语以及其他从右到左的语言有关:

  • U + 200E左标记aka LRM
  • U + 200F左右标记又称RLM
  • U + 202A从左向右嵌入也称为LRE
  • U + 202B从右向左嵌入也称为RLE
  • U + 202C POP定向格式,也称为PDF(此格式通常在LRE,RLE,LRO,RLO之后出现。与PDF文件无关。)
  • U + 202D左上方到右上方又名LRO
  • U + 202E左上方改名又称RLO
  • U + 2066左右隔离aka LRI
  • U + 2067右对左隔离片,也称为RLI
  • U + 2068第一强隔离片,也称为FSI
  • U + 2069 POP方向隔离名,也称为PDI(通常在LRI,RLI和FSI之后的某个时间出现。这四个是最近添加到标准中的,因此较不常见。)

我多次参加的其他一些活动:

  • U + 200B零宽度空间
  • U + 200C零宽度非JOINER(尽管已逐步淘汰,但在波斯和马拉雅拉姆语中很常见)
  • U + 200D ZERO WIDTH JOINER(在马拉雅拉姆语中很常见,但已被淘汰)
  • U + FEFF零宽度无间断空间

正确使用时,需要上述所有字符。 但是,不小心使用键盘的人或以不正确的方式悄悄使用键盘的文字处理器也可能会由于误插入而插入错误代码(Microsoft Word通常对此有罪)。

还有更多不可见的Unicode字符,但这是最常见的字符。

我的最爱之一是不间断空格。 可以轻松地复制它们,但是我发现显示它们的唯一的编辑器是VIM。 我尝试过的所有其他编辑器都不会显示它们,但是会显示其他隐藏字符。 我花了很长时间才发现它隐藏在用户的用户名中,而实际上代码没有错。