| auteur : bbil |
En utilisant la fonction Len() :
VBS | Dim st
st= " Bienvenue sur DVP "
Wscript. Echo Len (st)
|
|
| auteur : bbil |
L'opérateur usuel de concaténation est : &
VBS | Dim st1
Dim st2
st1 = " Bienvenue "
st2 = " sur dvp "
Wscript. Echo st1 & st2
Wscript. Echo st1 & " a vous "
|
ce qui donne :
Bienvenue sur dvp
Bienvenue a vous
|
Il est aussi possible (mais déconseillé) d'utiliser l'opérateur : +
Celui-ci se comporte en opérateur de concaténation lorsque les 2 membres de l'opération sont des chaînes
VBS |
Wscript. Echo " à voir " + st2
Wscript. Echo " 1 " + " 2 "
|
et en opérateur d'addition lorsque l'un des opérantes est numérique
VBS | Wscript. Echo " 3 " + 2
Wscript. Echo 1 + 2
|
 |
Une mauvaise utilisation de l'opérateur +, peut provoquer une erreur de type :
Erreur d'exécution Microsoft VBScript: Type incompatible: '[string: "a"]'
|
la chaîne "a" ne pouvant pas être additionnée à la valeur numérique 1.
|
| auteur : bbil |
la fonction Split permet "d'éclater" le contenu d'une chaîne dans un tableau, en fonction d'un caractère séparateur
VBS | Dim st,i,tb
st= " Antoine,Pierre,Jacques,Alain "
tb = split (st," , " )
For i = lbound (tb) to ubound (tb)
Wscript. echo tb (i)
next
|
Résultat | Antoine
Pierre
Jacques
Alain
|
Nota: les fonctions Lbound et Ubound permettent de renvoyer les limites basse et haute des index d'un tableau. La fonction Split renvoyant un tableau dont l'index le plus bas est toujours 0, on aurai pu écrire :
|
| auteur : bbil |
Il existe un pendant à la fonction Split :
la fonction Join qui permet de regrouper tous les éléments d'un tableau de chaîne en une chaîne, tout en précisant un séparateur :
VBS | Dim st,tb (3 )
Tb (0 )= " Antoine "
tb (1 )= " Pierre "
tb (2 )= " Jacques "
tb (3 )= " Alain "
st = join (tb," , " )
Wscript. echo st
|
Résultat | Antoine,Pierre,Jacques,Alain
|
Nota: Si le caractère de séparation est omis, un espace est utilisé.
|
| auteur : Romain Puyfoulhoux | Instr(p,ch1,ch2) recherche la chaîne ch2 dans ch1 à partir de la position p. Si ch2 est trouvée, la valeur renvoyée est la
position de son premier caractère dans ch1, sinon la fonction renvoie 0. vb |
pos = InStr (4 , " Nous sommes au mois de Juillet. " , " Juillet " )
pos = InStr (27 , " Nous sommes au mois de Juillet. " , " Juillet " )
|
|
| auteur : Romain Puyfoulhoux | La librairie Microsoft VBScript Regular Expressions permet d'utiliser des expressions régulières dans Visual Basic.
Il faut l'ajouter dans les références du projet.
Le principe consiste à créer un objet RegExp, à le paramétrer en modifiant ses propriétés, puis à lancer la recherche
en appelant la méthode Execute(). Vous devez passer en paramètre la chaîne de caractères dans laquelle vous souhaitez faire
une recherche. La méthode Execute renvoie les occurrences dans une collection. Si vous avez donné la valeur True à la
propriété Global de l'objet RegExp, cette collection contiendra toutes les occurrences, sinon seulement la première.
Voici comment vérifier la validité d'une adresse email. Ce code a été écrit avec la version 5.5 de la librairie. vbs | Public Function EmailValide (ByVal email )
Dim regEx , occurrences
Set regEx = New RegExp
regEx. Pattern = " ^[a-z0-9_.-]+@[a-z0-9.-]{2,}\.[a-z]{2,3}$ "
regEx. IgnoreCase = True
regEx. Global = False
Set occurrences = regEx. Execute (email)
EmailValide = (occurrences. Count = 1 )
End Function
|
|
| auteur : Baptiste Wicht |
Il faut pour cela utiliser l'objet RegExp qui va permettre de valider une chaîne de caractères en fonction d'un pattern :
vbs | Set RegularExpressionObject = New RegExp
|
Ensuite, il faut le paramétrer en fonction de la recherche :
With RegularExpressionObject
. Pattern = Pattern
. IgnoreCase = Boolean
End With
|
La pattern est l'expression régulière et IgnoreCase permet d'indiquer s'il faut prendre en compte ou non la casse.
Ensuite, une fois l'objet paramétré, il suffit d'utiliser la méthode Test avec la chaîne à tester en paramètre :
RegularExpressionObject. Test (aTester)
|
Cette méthode va nous renvoyer True ou False en fonction du résultat.
Voici par exemple, la méthode pour valider une adresse IP :
vbs | Set RegularExpressionObject = New RegExp
With RegularExpressionObject
. Pattern = " ^((25[0-5]|2[0-4]\d|1?\d?\d)\.){3}(25[0-5]|2[0-4]\d|1?\d?\d)$ "
. IgnoreCase = False
End With
MsgBox RegularExpressionObject. Test (" 172.16.18.21 " )
MsgBox RegularExpressionObject. Test (" 300.22.194.37 " )
|
|
| auteurs : Sadneth, shwin |
En utilisant la méthode Eval :
vbs |
Dim toto
toto = " SUPER * 10 "
MsgBox Eval (Replace (toto, " SUPER " , 500 ))
|
|
Consultez les autres F.A.Q's
Les sources présentés sur cette pages sont libre de droits,
et vous pouvez les utiliser à votre convenance. Par contre cette page de présentation de ces sources constitue une oeuvre intellectuelle protégée par les droits d'auteurs.
Copyright ©2008
Developpez LLC. Tout droits réservés Developpez LLC.
Aucune reproduction, même partielle, ne peut être faite de ce site et de
l'ensemble de son contenu : textes, documents et images sans l'autorisation
expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à 3 ans
de prison et jusqu'à 300 000 E de dommages et intérets.
Cette page est déposée à la SACD.
|