|
|
|
|
|
- Recherche de la chaîne de caractères
- Unicode/Ansi
- Caractères pris en compte pour la ponctuation et les espaces
- Divers
Position (Fonction) En anglais : Position Recherche la position d'une chaîne de caractères dans une autre chaîne de caractères (ou dans un Buffer). Il est également possible de rechercher la position d'une des chaînes de caractères présentes dans un tableau.
n est un entier MaChaîne est une chaîne = "What a wonderful World" n = Position(MaChaîne, "won", 1, DepuisDébut) // Renvoie 8 (position du "w" de "wonderful") n = Position(MaChaîne, "XXX") // Renvoie 0 (pas de "XXX" dans la chaîne) n = Position(MaChaîne, "l", 0, DepuisFin) // Renvoie 21 (position du "l" de "World") n = Position(MaChaîne, "e", 11) // Renvoie 12 (position du "e" de "wonderful") n = Position(MaChaîne, "o", Taille(MaChaîne), DepuisFin) // Renvoie 19 (position du "o" de "World") n = Position(MaChaîne, "o", n-1, DepuisFin) // Renvoie 9 (position du "o" de "wonderful") n = Position(MaChaîne, "o", n-1, DepuisFin) // Renvoie 0 (il n'y a plus de "o") n est un entier MaChaîne2 est une chaîne = "http://Serveur/Fichier.html" n = Position(MaChaîne2,["/","//"]) // Renvoie 6 n = Position(MaChaîne2,["/","//"], 8) // Renvoie 15 Syntaxe
Rechercher la position d'une chaîne de caractères dans une autre chaîne de caractères Masquer les détails
<Résultat> = Position(<Chaîne initiale> , <Chaîne à  rechercher> [, <Position de départ> [, <Option>]])
<Résultat> : Entier - Position du premier caractère de la chaîne de caractères recherchée dans la chaîne initiale,
- 0 si la chaîne recherchée n'a pas été trouvée.
Cette position est donnée par rapport au début de la chaîne.
<Chaîne initiale> : Chaîne de caractères Chaîne de caractères dans laquelle la recherche doit être effectuée (taille maximale : 2 Go). <Chaîne à rechercher> : Chaîne de caractères Chaîne de caractères à rechercher dans la chaîne initiale. <Position de départ> : Entier optionnel Indice du caractère à partir duquel la recherche doit être effectuée. Par défaut, la recherche commence à partir du premier caractère (caractère numéro 1). Pour effectuer une recherche depuis la fin de la chaîne (constante DepuisFin), ce paramètre doit correspondre à 0 ou à la taille de la chaîne. Si ce paramètre est négatif, la recherche commence à partir du premier caractère. Si ce paramètre est supérieur au nombre de caractères de la <Chaîne initiale>, <Résultat> est égal à 0. <Option> : Constante (ou combinaison de constantes) optionnelle Indique le sens du parcours de la recherche et les caractéristiques de la recherche : | | DepuisDébut (Valeur par défaut) | Recherche effectuée du premier caractère de la chaîne vers le dernier. | DepuisFin | Recherche effectuée du dernier caractère de la chaîne vers le premier. | MotComplet | Recherche le mot complet, c'est-à -dire entouré par des caractères de ponctuation ou des espaces. | SansCasse | Recherche sans tenir compte de la casse (majuscules/minuscules) ou des accents. |
Rechercher une chaîne de caractères dans un tableau de chaînes de caractères Masquer les détails
(<Résultat>, <Indice>) = Position(<Chaîne initiale> , <Tableau de chaînes à  rechercher> [, <Position de départ> [, <Option>]])
<Résultat> : Entier - Position du premier caractère de la première chaîne de caractères du tableau trouvée dans la chaîne initiale.
Cette position est donnée par rapport au début de la chaîne. - 0 si aucune des chaînes recherchées n'a été trouvée.
<Indice> : Entier Indice de la chaîne trouvée dans le tableau. <Chaîne initiale> : Chaîne de caractères Chaîne de caractères dans laquelle la recherche doit être effectuée (taille maximale : 2 Go). <Tableau de chaînes à rechercher> : Tableau Tableau contenant les chaînes de caractères à rechercher dans la chaîne initiale. <Position de départ> : Entier optionnel Indice du caractère à partir duquel la recherche doit être effectuée. Par défaut, la recherche commence à partir du premier caractère (caractère numéro 1). Pour effectuer une recherche depuis la fin de la chaîne, ce paramètre doit correspondre à 0 ou à la taille de la chaîne. Si ce paramètre est négatif, la recherche commence à partir du premier caractère. Si ce paramètre est supérieur au nombre de caractères de la <Chaîne initiale>, <Résultat> est égal à 0. <Option> : Constante (ou combinaison de constantes) optionnelle Indique le sens du parcours de la recherche et les caractéristiques de la recherche : | | DepuisDébut (Valeur par défaut) | Recherche effectuée du premier caractère de la chaîne vers le dernier. | DepuisFin | Recherche effectuée du dernier caractère de la chaîne vers le premier. | MotComplet | Recherche le mot complet, c'est-à -dire entouré par des caractères de ponctuation ou des espaces. | SansCasse | Recherche sans tenir compte de la casse (majuscules/minuscules) ou des accents. |
Remarques Recherche de la chaîne de caractères Par défaut, la recherche est sensible à la casse : la chaîne recherchée doit avoir la même casse que la chaîne à trouver dans la chaîne. Pour effectuer une recherche non sensible à la casse, utilisez le paramètre SansCasse. Les positions dans une chaîne de caractères sont toujours données depuis le début de la chaîne, quel que soit le sens de parcours de la recherche. Pour utiliser la fonction Position avec le paramètre DepuisFin, il est nécessaire de commencer à la position calculée par Taille(<Chaîne initiale>). Par exemple : Position(MaChaîne, "\", Taille(MaChaîne), DepuisFin) La syntaxe suivante peut également être utilisée. Dans ce cas, le paramètre 0 permet à la fonction de sélectionner la position de départ la plus adaptée. Position(MaChaîne, "\", 0, DepuisFin) La fonction Position permet de rechercher la position d'une chaîne dans une chaîne Unicode ou Ansi. Des chaînes Ansi et/ou Unicode peuvent être utilisées dans les paramètres <Chaîne initiale> et <Chaîne à rechercher> (il est possible d'avoir un paramètre au format Unicode et un paramètre au format Ansi). La règle de conversion utilisée est la suivante : - Si l'une au moins des chaîne est Unicode, toutes les chaînes sont converties en Unicode, et l'opération est réalisée en Unicode.
- sinon, l'opération est réalisée en Ansi.
Caractères pris en compte pour la ponctuation et les espaces Les caractères pris en compte pour la ponctuation et les espaces sont fournis par le système. Pour obtenir la liste de ces caractères, il suffit d'écrire le code WLangage suivant :
s est une chaîne
POUR i = 0 À 255
SI Caract(i) <> ChaîneFormate(Caract(i), ccSansPonctuationNiEspace) ALORS
s += Caract(i)
FIN
FIN
Info(s)
VersPressePapier(s)
Divers La fonction PositionOccurrence permet de connaître la position de la Nème occurrence d'une sous-chaîne en effectuant une recherche soit depuis le début de la chaîne, soit depuis la fin de la chaîne.
Documentation également disponible pour…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|