[Linux-31] «Identité» n'est pas «Identité» pour bash

jeanmichel.123 at free.fr jeanmichel.123 at free.fr
Mer 10 Oct 22:41:44 CEST 2012


Je suis d'accord sur l'analyse: les deux chaînes sont identiques, au sens commun, mais différentes dans leur expression binaire.

Effectivement, si l'on cherche à comparer deux chaînes d'octets, l'approche du bash - à moins que ce ne soit celle de /usr/bin/[ -est celle à laquelle on peut donner raison.

Toutefois, si le but est de comparer deux chaînes de textes, dans un environnement hétérogène comme peut l'être l'internet, on pourrait avoir un deuxième opérateur de comparaison, pour comparer deux textes plutôt que deux chaînes binaires. Il est d'ailleurs vraisemblable que certains moteurs de recherche, du moins dans leur principe de fonctionnement, aillent au-delà.




----- Mail original -----
De: "Chaput Emmanuel" 


    Jolie question !

    En fait, le premier mot ($a) a été codé en UTF-8 avec
un 65 puis cc81 (donc un e suivi d'un accent aigu), alors
que le second ($b) l'a été avec un c3a9 (donc un e accent
aigu). Un petit "od" permet de s'en convaincre, ...

    Au final, le texte affiché est le même, mais pas le code
stocké ...

    C'est donc bash qui a raison (encore que /usr/bin/[  n'est
pas une built-in de bash à mon avis).

    J'ai bon ?

Le 09/10/2012 23:42, jeanmichel.123 at free.fr a écrit :
> A défaut de se demander ce qu'est l'identité ..., on peut se demander s'il y a identité entre Identité et Identité.
>
> Le bash a son idée sur la question!
>
> a="Identité" b="Identité"; [[ $a = $b ]] || echo "«$a» n'est pas «$b» pour $0"
> «Identité» n'est pas «Identité» pour bash
> _______________________________________________
> Linux-31 mailing list
> Linux-31 at culte.org
> http://culte.org/mailman/listinfo/linux-31
>    


-- 
Emmanuel Chaput, Maître de Conférences - Dépt Télécom&  Réseau, ENSEEIHT
Equipe Ingénierie Réseaux et Télécommunications                IRIT-CNRS
*5 34 32 22 31 - Fax *5 34 32 21 57                Emmanuel.Chaput at n7.fr

_______________________________________________
Linux-31 mailing list
Linux-31 at culte.org
http://culte.org/mailman/listinfo/linux-31



Plus d'informations sur la liste de diffusion Linux-31