Utf 8 零宽度/不可见字符强制自定义排序

Utf 8 零宽度/不可见字符强制自定义排序,utf-8,Utf 8,UTF-8中存在哪些不作为空格处理的零宽度字符?我特别感兴趣的是那些不在主要浏览器上呈现的glyph:不应该显示未找到的矩形 有许多web服务按字母顺序排列用户输入的数据(如Gmail标签)。我想使用这些不可见的字符来执行自定义排序 作为空格处理:不被常用的trim和类似的实现删除。以gmail为例,U+202F(窄无中断空间)被修剪 编辑:只需一个不可见字符即可。毕竟,它们可能会在不影响视觉表现的情况下重复(假设下面是较低的ascii文本代码): 不幸的是,我能想到的所有字符要么立即被修剪,要

UTF-8中存在哪些不作为空格处理的零宽度字符?我特别感兴趣的是那些不在主要浏览器上呈现的glyph:不应该显示未找到的矩形

有许多web服务按字母顺序排列用户输入的数据(如Gmail标签)。我想使用这些不可见的字符来执行自定义排序

作为空格处理:不被常用的
trim
和类似的实现删除。以gmail为例,
U+202F
(窄无中断空间)被修剪

编辑:只需一个不可见字符即可。毕竟,它们可能会在不影响视觉表现的情况下重复(假设下面是较低的ascii文本代码):

不幸的是,我能想到的所有字符要么立即被修剪,要么被排序函数忽略


编辑:我浏览过一个看起来是零宽度/不可见的文件,没有一个能按要求工作
U+0-U+20
DEL
,控制字符,甚至U+034F:
组合GRAPHEME JOINER(别名CGJ)
等符号,都被正确处理,因此无法用于我的目的。但我一直在搜索。

您可以尝试以下方法:

U+200B ZERO WIDTH SPACE 
U+200C ZERO WIDTH NON-JOINER  
U+200D ZERO WIDTH JOINER

不幸的是,这些都被视为空间。虽然没有立即修剪,但在对字符串排序时会忽略它们。恐怕大多数不可见字符也是如此(也包括那些带有未找到矩形的字符,例如所有
*零位
字符)。
U+200B ZERO WIDTH SPACE 
U+200C ZERO WIDTH NON-JOINER  
U+200D ZERO WIDTH JOINER