Page 1 sur 1

[Func] StringWildcard: filtre simple (avec "*" et "?")

Posté : mer. 06 nov. 2013 03:57
par David123
La fonction StringWildCard() teste si une chaîne contient des correspondances avec un wildcard (filtre).
Renvoie la (les) correspondances entre la chaîne testée et le filtre (wildcard) donné
Ou 0 si la chaîne ne correspond pas.
"?" peut remplacer un et un seul caractère
"*" peut remplacer n'importe quelle chaîne même vide.
"\" permet d'échapper un caractère spécial : "\*" sera le caractère "*"
"\\" sera le caractère "\".
StringWildCardEscape() échappe tous les caractères spéciaux d'une chaîne.

Evidemment plus pauvre que StringRegExp() mais permet de façon synthétique une comparaison ou extraction rapide de sous-chaînes,
avec une syntaxe intuitive.

Permet notamment de faire entrer un wildcard par l'utilisateur; Il ne connaît peut être pas les expressions régulières de StringRegExp().

Code : Tout sélectionner

StringWildCard($String, $Wildcard, $ReturnArray = 0, $Start = 1, $Occurence = 1, $CaseSensitive = 0)
► Afficher le texteFonction StringWildCard()

Code : Tout sélectionner

Func StringWildCardEscape($String)

Re: [Func]StringWildcard: filtre simple (avec "*" et "?")

Posté : mer. 06 nov. 2013 10:32
par jchd
Presque !

Code : Tout sélectionner

$result = StringWildCard("answers.txt","ans*.*")
MsgBox(0, "", $result)

Re: [Func]StringWildcard: filtre simple (avec "*" et "?")

Posté : mer. 06 nov. 2013 11:04
par timmalos
Pour corrriger le problème cité par Jchd il faut changer l'ordre des StringReplace, sinon quand vous remplacez le . par \. l'antislash est ensuite remplacé par \\ ce qui nous donne \\. qui n'est plus la même chose :)

Re: [Func]StringWildcard: filtre simple (avec "*" et "?")

Posté : mer. 06 nov. 2013 12:20
par jchd
Argh, tu gâches le plaisir de l'effet "Haha".

Re: [Func] StringWildcard: filtre simple (avec "*" et "?")

Posté : mer. 29 janv. 2014 08:53
par David123
Corrigé