VB : Liste une chaine de chaine et dire s'il y a un @ dans la chaine - Programmation
Marsh Posté le 25-02-2001 à 12:08:07
J'ai pas VB sous la mains, mais en VBA c'est :
InStr([start, ]string1, string2[, compare])
La syntaxe de la fonction InStr comprend les arguments suivants :
Élément Description
start Facultatif. Expression numérique qui définit la position de départ de chaque recherche. Si cet argument est omis, la recherche commence au premier caractère. Si l'argument start contient une valeur de type Null, une erreur se produit. L'argument start est obligatoire si l'argument compare est indiqué.
string1 Expression de chaîne dans laquelle la recherche est effectuée.
string2 Expression de chaîne recherchée.
compare Facultatif. Indique le type de comparaison de chaînes. Si l'argument compare est de type Null, une erreur se produit. Si l'argument compare est omis, la valeur de l'instruction Option Compare détermine le type de comparaison. Indiquez un LCID (LocaleID) correct pour respecter les règles locales spécifiques à la comparaison.
Valeurs
L'argument compare peut prendre les valeurs suivantes :
Constante Valeur Description
vbUseCompareOption -1 Effectue une comparaison à l'aide de la valeur de l'instruction Option Compare.
vbBinaryCompare 0 Effectue une comparaison binaire.
vbTextCompare 1 Effectue une comparaison textuelle.
vbDatabaseCompare 2 Réservée à Microsoft Access. Effectue une comparaison basée sur les informations de votre base de données.
Valeurs renvoyées
Si La fonction InStr renvoie
string1 est de longueur nulle 0
string1 est de type Null Null
string2 est de longueur nulle start
string2 est de type Null Null
string2 est introuvable 0
string2 est trouvée à l'intérieur de string1 Position à laquelle la chaîne est trouvée
start > string2 0
Remarques
La fonction InStrB est utilisée pour traiter sous forme d'octets les données d'une chaîne. Au lieu de renvoyer la position de caractère de la première occurrence d'une chaîne dans une autre, la fonction InStrB renvoie la position de l'octet.
Marsh Posté le 25-02-2001 à 14:30:51
Oui, j'ai vu ca ds MSDN, mais y a pas d'exemple de syntax précis
Marsh Posté le 25-02-2001 à 18:02:09
InStr, fonction, exemple
Cet exemple utilise la fonction InStr pour renvoyer la position de la première occurrence d'une chaîne dans une autre chaîne.
Dim SearchString, SearchChar, MyPos
SearchString ="XXpXXpXXPXXP" ' Chaîne dans laquelle s'effectue la
' recherche.
SearchChar = "P" ' Recherche la chaîne "P".
' Une comparaison sans respect des majuscules et des minuscules commence ' à la position 4 et renvoie 6.
MyPos = Instr(4, SearchString, SearchChar, 1)
' Une comparaison avec respect des majuscules et des minuscules commence ' à la position 1 et renvoie 9.
MyPos = Instr(1, SearchString, SearchChar, 0)
' Par défaut (lorsque le dernier argument est omis),la recherche respecte ' les majuscules et les minuscules.
MyPos = Instr(SearchString, SearchChar) ' Renvoie 9.
MyPos = Instr(1, SearchString, "W" ) ' Renvoie 0.
Quand même, y'en a qui il faut macher le boulot
Marsh Posté le 25-02-2001 à 11:45:25
Je c fais en Jscript avec Lastindexof ou charindex, mais en VB, j'ai beau regarder dans MSDN, je trouve rien