2012-09-24 5 views
2

Quels caractères de largeur nulle existent dans UTF-8 qui ne sont pas traités comme des espaces 1? Je m'intéresse particulièrement à ceux dont les glyphes ne sont pas rendus sur les principaux navigateurs: le rectangle non trouvé ne devrait jamais être montré.Caractères de largeur nulle/invisibles pour forcer la commande personnalisée

De nombreux services Web permettent à l'utilisateur de saisir des données par ordre alphabétique (par exemple, les libellés de Gmail). Je voudrais utiliser ces caractères invisibles pour appliquer la commande personnalisée.

1Traités comme espaces: non supprimés par les implémentations couramment utilisées de trim et similaires. Avec l'exemple gmail, U+202F (espace étroit sans coupure) est rogné.

Modifier: Un seul caractère invisible devrait suffire. Après tout, ils peuvent être répétées sans avoir un effet sur la représentation visuelle (en supposant un code texte inférieur ascii suit):

[char]Z on first position 
[char][char]B on second position 
[char][char][char]C on third position 

Malheureusement, tous les personnages que je pouvais penser sont soit parés tout de suite ou ignorés par les fonctions de tri .

Modifier: J'ai parcouru all UTF-8 characters qui semblait zéro largeur/invisible et aucun travaillé comme requis. U+0 - U+20, DEL, les caractères de contrôle, même des symboles tels que U + 034F: COMBINING GRAPHEME JOINER (alias CGJ), tous sont traités correctement et donc inutilisable pour mon but. Je continue à chercher bien.

Répondre

1

Vous pouvez essayer les suivantes:

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

Malheureusement ceux-ci sont tous traités comme des espaces. Bien qu'ils ne soient pas supprimés immédiatement, ils sont ignorés lorsque les chaînes sont triées. J'ai peur qu'il en soit de même pour la plupart des caractères invisibles (y compris ceux avec le rectangle non trouvé, par exemple tous les caractères '* digit zero'). –

Questions connexes