Comparer exactement 2 chaines

manud31 Messages postés 81 Date d'inscription vendredi 28 octobre 2005 Statut Membre Dernière intervention 16 mai 2006 - 12 janv. 2006 à 14:21
ScSami Messages postés 1488 Date d'inscription mercredi 5 février 2003 Statut Membre Dernière intervention 3 décembre 2007 - 12 janv. 2006 à 18:44
Bonjour à tous,

J'ai un code qui me permet lorsque je rentre une référence dans une textbox (ex : 2010-A252) et en cliquant sur un commandbutton, d'aller chercher dans un fichier texte si cette référence existe, et si elle existe de me renvoyer une valeur correspondant à la référence.

Mon problème est que lorsque que je tape une référence invalide comme 2010-A2, j'ai qu'en même une valeur qui est renvoyée , car VB reconnait cette partie de la référence. C'est pourquoi je voudrais tester EXACTEMENT si la référence existe.

Je ne peut pas travailler sur la longueur de la chaine car toutes les références n'ont pas la même longueur.

J'aurais voulu savoir s'il existait une fonction qui permet de tester exactement 2 chaines?

Merci d'avance.

3 réponses

Osris6880 Messages postés 41 Date d'inscription samedi 27 décembre 2003 Statut Membre Dernière intervention 12 janvier 2006
12 janv. 2006 à 15:53
Salut, je remarque que ton fichier à l'air compliqué pour que tu ne puisse pas utiliser la longueur des chaines.

Je te propose de regarder une fois la chaine trouvé, s'il y a un retour chariot (13 en ASCII) ou un espace (32 en ASCII).

Ainsi tu sera si ta chaine est fini ou pas.

J'espére que cette solution résoudra ton problème.

Osiris 6880



PS : Les valeurs ASCII sont donnés à titre indicatif.
0
manud31 Messages postés 81 Date d'inscription vendredi 28 octobre 2005 Statut Membre Dernière intervention 16 mai 2006
12 janv. 2006 à 16:25
Merci pour ta réponse,


En fait j'ai pu travailler sur la longueur des chaines en comparant la valeur trouvée dans le fichier texte à celle rentrée dans la textbox. Apparemment ca marche.
0
ScSami Messages postés 1488 Date d'inscription mercredi 5 février 2003 Statut Membre Dernière intervention 3 décembre 2007 24
12 janv. 2006 à 18:44
Il suffit d'utiliser une simple comparaison "=" !!!
If Text1.Text = LigneDuFichier Then ...

Mais pour en dire plus il nous aurait fallut le code.
Osiris : tu oublies le mode d'ouverture!!! Tout dépend de la façon dont il lit les données!!! Je ne suis pas certain d'ailleurs qu'avec un Line Input le CRLF soit retourné comme tu supposes!!!

Manud : Pense à d'un, être clair dans ta question, et de deux, de nous préciser le langage dans lequel tu codes ainsi que sa version!

Enjoy

<hr size="2" width="100%">
( Si une réponse vous convient, cliquez sur le bouton "Réponse acceptée". )
0
Rejoignez-nous