Comparaison de chaînes de caractères [Résolu]

Messages postés
390
Date d'inscription
vendredi 18 juin 2004
Statut
Membre
Dernière intervention
7 mai 2009
- - Dernière réponse : cs_Nebula
Messages postés
790
Date d'inscription
samedi 8 juin 2002
Statut
Membre
Dernière intervention
7 juin 2007
- 16 nov. 2004 à 00:24
Bonsoir à tous.

Je cherche une fonction me permettant de trouver si une chaîne S2 se trouve dans une chaîne S1, le tout sans respect de la casse (si possible).

Par exemple si :
S1=Bonjour
S2=bon

La fonction me renvoie "True" comme résultat car "bon" est contenu dans "Bonjour".

Merci à vous.
Afficher la suite 

7 réponses

Meilleure réponse
Messages postés
390
Date d'inscription
vendredi 18 juin 2004
Statut
Membre
Dernière intervention
7 mai 2009
3
Merci
Oui c'est pareil ...

Merci :-)

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 210 internautes nous ont dit merci ce mois-ci

Commenter la réponse de John Dogget
Messages postés
4580
Date d'inscription
samedi 19 janvier 2002
Statut
Modérateur
Dernière intervention
9 janvier 2013
24
1
Merci
Il n'existe pas de fonction toute faite mais le résultat est facilement obtenu en "alignant" la casse des deux chaînes comparées :
 Result := Pos(UpperCase(S2), Uppercase(S1)) > 0;


Pensez à cliquer sur Réponse acceptée lorsque la réponse vous convient.
Commenter la réponse de cs_Delphiprog
Messages postés
790
Date d'inscription
samedi 8 juin 2002
Statut
Membre
Dernière intervention
7 juin 2007
1
0
Merci
Et CompareText alors ?
Commenter la réponse de cs_Nebula
Messages postés
390
Date d'inscription
vendredi 18 juin 2004
Statut
Membre
Dernière intervention
7 mai 2009
0
Merci
En fait la fonction de Delphiprog correspondait plus à mes attentes : elle renvoie un booleen ...
Commenter la réponse de John Dogget
Messages postés
790
Date d'inscription
samedi 8 juin 2002
Statut
Membre
Dernière intervention
7 juin 2007
1
0
Merci
Ben tu testes = 0, çà revient au même (et évite les UpperCaser ou LowerCase, enfin on n'est plus à çà près)
Commenter la réponse de cs_Nebula
Messages postés
4580
Date d'inscription
samedi 19 janvier 2002
Statut
Modérateur
Dernière intervention
9 janvier 2013
24
0
Merci
Nebula : la fonction CompareText n'est pas faite pour déterminer si une chaine est dans une autre chaine mais si deux chaines commencent par la même séquence de caractères. Ce qui, évidemment, n'est pas la même chose.
Commenter la réponse de cs_Delphiprog
Messages postés
790
Date d'inscription
samedi 8 juin 2002
Statut
Membre
Dernière intervention
7 juin 2007
1
0
Merci
Pas faux, je m'étais basé sur l'exemple avec "bonjour"... Mea culpa :)
Commenter la réponse de cs_Nebula