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

Signaler
Messages postés
384
Date d'inscription
vendredi 18 juin 2004
Statut
Membre
Dernière intervention
7 mai 2009
-
Messages postés
787
Date d'inscription
samedi 8 juin 2002
Statut
Membre
Dernière intervention
7 juin 2007
-
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.

7 réponses

Messages postés
384
Date d'inscription
vendredi 18 juin 2004
Statut
Membre
Dernière intervention
7 mai 2009

Oui c'est pareil ...

Merci :-)
Messages postés
4580
Date d'inscription
samedi 19 janvier 2002
Statut
Modérateur
Dernière intervention
9 janvier 2013
28
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.
Messages postés
787
Date d'inscription
samedi 8 juin 2002
Statut
Membre
Dernière intervention
7 juin 2007
1
Et CompareText alors ?
Messages postés
384
Date d'inscription
vendredi 18 juin 2004
Statut
Membre
Dernière intervention
7 mai 2009

En fait la fonction de Delphiprog correspondait plus à mes attentes : elle renvoie un booleen ...
Messages postés
787
Date d'inscription
samedi 8 juin 2002
Statut
Membre
Dernière intervention
7 juin 2007
1
Ben tu testes = 0, çà revient au même (et évite les UpperCaser ou LowerCase, enfin on n'est plus à çà près)
Messages postés
4580
Date d'inscription
samedi 19 janvier 2002
Statut
Modérateur
Dernière intervention
9 janvier 2013
28
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.
Messages postés
787
Date d'inscription
samedi 8 juin 2002
Statut
Membre
Dernière intervention
7 juin 2007
1
Pas faux, je m'étais basé sur l'exemple avec "bonjour"... Mea culpa :)