FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» Logiciel de planétarium.
Comparaison de strings en ASCII strict Emptypar Jack Aujourd'hui à 10:03

» Un autre pense-bête...
Comparaison de strings en ASCII strict Emptypar Froggy One Jeu 21 Nov 2024 - 15:54

» Récupération du contenu d'une page html.
Comparaison de strings en ASCII strict Emptypar Pedro Sam 16 Nov 2024 - 14:04

» Décompilation
Comparaison de strings en ASCII strict Emptypar JL35 Mar 12 Nov 2024 - 19:57

» Un album photos comme du temps des grands-mères
Comparaison de strings en ASCII strict Emptypar jjn4 Mar 12 Nov 2024 - 17:23

» traitement d'une feuille excel
Comparaison de strings en ASCII strict Emptypar jjn4 Jeu 7 Nov 2024 - 3:52

» Aide-mémoire mensuel
Comparaison de strings en ASCII strict Emptypar jjn4 Lun 4 Nov 2024 - 18:56

» Des incomprèhension avec Timer
Comparaison de strings en ASCII strict Emptypar Klaus Mer 30 Oct 2024 - 18:26

» KGF_dll - nouvelles versions
Comparaison de strings en ASCII strict Emptypar Klaus Mar 29 Oct 2024 - 17:58

» instructions panoramic
Comparaison de strings en ASCII strict Emptypar maelilou Lun 28 Oct 2024 - 19:51

» Figures fractales
Comparaison de strings en ASCII strict Emptypar Marc Ven 25 Oct 2024 - 12:18

» Panoramic et Scanette
Comparaison de strings en ASCII strict Emptypar Yannick Mer 25 Sep 2024 - 22:16

» Editeur d étiquette avec QR évolutif
Comparaison de strings en ASCII strict Emptypar JL35 Lun 23 Sep 2024 - 22:40

» BUG QR Code DelphiZXingQRCode
Comparaison de strings en ASCII strict Emptypar Yannick Dim 22 Sep 2024 - 11:40

» fichier.exe
Comparaison de strings en ASCII strict Emptypar leclode Ven 20 Sep 2024 - 19:02

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Novembre 2024
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
252627282930 
CalendrierCalendrier
-55%
Le deal à ne pas rater :
Friteuse sans huile – PHILIPS – Airfryer HD9200/90 Série 3000
49.99 € 109.99 €
Voir le deal

 

 Comparaison de strings en ASCII strict

Aller en bas 
2 participants
AuteurMessage
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

Comparaison de strings en ASCII strict Empty
MessageSujet: Comparaison de strings en ASCII strict   Comparaison de strings en ASCII strict EmptyMer 16 Nov 2011 - 18:48

Suite à une longue discussion dur le forum, j'ai pris conscience que TOUTES les comparaisons entre chaines de caractères sont faites en tenant compte de la langue du système et de l'utilisateur, soit Français pour ceux qui sont en France, et ceci en utilisant une "séquence de collation" regroupant les caractères selon un ordre "lexicographique" qui n'a pas vraiment de rapport avec l'ordre ASCII strict. Et ceci est vrai aussi pour la fonction CompareStr de ma dll STRINGS.dll dans la distribution DLLdivers.

J'ai donc ajouté une fonction nouvelle à cette dernière dll: la fonction CompareStrA(string1,string2). La documentation est dans le fichier Autres_DLL.rtf qui se trouve dans la distribution de DLLdivers.

Cette routine effectue une VRAIE comparaison en respectant l'ordre ASCII des caractères, et en particulier ceci:
chiffres < lettres majuscules < caracères spéciaux comme "_" < lettres minuscules < lettres accentuées
Exemple:
3 < C < _ < f < é
Je pense combler un vrai manque avec cette routine.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Nardo26

Nardo26


Nombre de messages : 2294
Age : 56
Localisation : Valence
Date d'inscription : 02/07/2010

Comparaison de strings en ASCII strict Empty
MessageSujet: Re: Comparaison de strings en ASCII strict   Comparaison de strings en ASCII strict EmptyMer 16 Nov 2011 - 19:04

Bonsoir Klaus,
Une chose que je ne pige pas, j'ai du louper quelque chose.... Wink
Pour la comparaison en ASCII strict, pourquoi faire une DLL ?
scratch

Par contre, aurais-tu une solution (via dll ou autre) pour une fonction de comparaison qui s'appuie sur les critères de tri des DLIST et autres objets delphi ? Je n'ai pas trouvé de doc expliquant dans le détail cet ordre de tri... Comparaison de strings en ASCII strict 84
Car cette fonction manque véritablement à Panoramic : ma solution de stockage dans une DLIST temporaire pour faire la comparaison est un peu bourrin... Very Happy

Une solution qui pourrait être envisagée : Jack nous ponde une fonction qui force les cde SORT à fonctionner en mode ASCII strict... mais là c'est une autre histoire... Wink





Revenir en haut Aller en bas
http://nardo26.lescigales.org
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

Comparaison de strings en ASCII strict Empty
MessageSujet: Re: Comparaison de strings en ASCII strict   Comparaison de strings en ASCII strict EmptyMer 16 Nov 2011 - 19:24

J'ai voulu faire une fonction simple à laquelle on passe 2 strings et qui retourne -1, 0 ou +1 selon que s1<s2, s1=s2 ou s1>s2, et ceci selon l'ordre strict ASCII.

Le tri des dlist, tout comme le tri de l'utilitaire SORT de Dos, des colonnes de l'explorateur de fichiers etc, se faitr selon une "collation" dépendant de la localisation de la machine (langue principale, langue secondaire) qui sont Français toutes les deux pour les machines en France. Or, dans ce cas, l'ordre des tris est:
caractères spéciaux dont "_" < chiffres < lettres
Et dans les lettres, on mélange minuscules, majuscules et lettres accentuées, de sorte que par exemple, (e,E,é,ê,Ê,...)sour regroupés ensemble, après les d et devant les f. De plus, 003A passe après 013A, car on évalue la valeur numérique de sorte que 003 = 3 et 013 à 13, et 3 < 13 !

Ma vieille fonction ComparsStr de la sll STRINGS.dll fonctionne comme ça, si c'est sûrement la routine que tu cherches. La nouvelle routine fait la comparaison selon le vrai ordre ASCII.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Nardo26

Nardo26


Nombre de messages : 2294
Age : 56
Localisation : Valence
Date d'inscription : 02/07/2010

Comparaison de strings en ASCII strict Empty
MessageSujet: Re: Comparaison de strings en ASCII strict   Comparaison de strings en ASCII strict EmptyMer 16 Nov 2011 - 19:28

Ok merci Klaus,

Dès que j'ai un moment j'essaye ta fonction ComparsStr. Wink
Revenir en haut Aller en bas
http://nardo26.lescigales.org
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

Comparaison de strings en ASCII strict Empty
MessageSujet: Re: Comparaison de strings en ASCII strict   Comparaison de strings en ASCII strict EmptyMer 16 Nov 2011 - 20:00

Voici un petit programme de démo qui montre les différences entre CompareStr et CompareStrA. Dans la première ligne, il y a 3 zones edit. Celle de gauche reçoit le string 1, celle de droite reçoit le string 2. Celle du milieu est remplie par le programme et reçoit "<", "=" ou ">", selon le cas. Deux boutons aux libellés des noms de fonctions effectuent l'une ou l'autre comparaison, et les deux zones edit en deuxième ligne affichent le code ascii du premier caractère des deux strings. Avec ce programme, on voit immédiatement la différence entre les deux méthodes de tri.

Il faut télécharger DLLdivers, décompresser le ZIP, installer STRINGS.dll et faire marcher le programme.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Contenu sponsorisé





Comparaison de strings en ASCII strict Empty
MessageSujet: Re: Comparaison de strings en ASCII strict   Comparaison de strings en ASCII strict Empty

Revenir en haut Aller en bas
 
Comparaison de strings en ASCII strict
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Tri de chaîne dans l'ordre strict Ascii
» Problème en adressage de strings par ADR() ?
»  1.84 18/11/2012 ajout fonctions de strings
» Problème avec guillements dans des strings
» ASCII ART

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: Activité des sites créés par les Panoramiciens. :: Le site de Klaus-
Sauter vers: