FIND
La fonction de script FIND vous permet de rechercher un tableau de script et de renvoyer la position d'index correspondante.
Syntaxe
FIND (script array, string [, start index] )
Paramètres
- FIND
Recherche un tableau de script - Script array
Nom du tableau de script à rechercher - String
Chaîne ou nombre à rechercher
Format : littéral de chaîne, nombre sans guillemets ou variable de script - Start index
(Optionnel) Index de début de la recherche
Format :nombre sans apostrophes ou variable de script
Codes retour
- Index du tableau dans lequel le terme recherché a été trouvé
- 0 en l'absence de résultat de la recherche
Remarques :
- La recherche d'un terme de recherche est réalisée pour toutes les valeurs de tableau de script à partir de l'index Start index.
- La recherche porte sur l'ensemble du tableau si vous ne spécifiez pas de position de début, à partir de l'index 1.
- Une recherche réussie renvoie l'index du tableau dans lequel le texte ou le nombre a été trouvé en premier. Vous pouvez utiliser l'index suivant du résultat précédent comme position de départ pour poursuivre la recherche dans le reste du tableau.
- Spécifiez les tableaux par des crochets vides [].
Conseils :
- Utilisez :DEFINE pour créer des tableaux de script, et déclarer le type de données et la taille du tableau.
- Définissez des éléments de tableau individuels et spécifiez l'index avec l'instruction :SET.
- Utilisez :FILL pour enregistrer plusieurs valeurs à la fois dans un tableau.
Pour plus d'informations sur les tableaux de script, voir Tableaux.
Exemples
L'exemple suivant illustre la création et l'initialisation d'un tableau avec les valeurs d'un objet variable. Le script recherche la chaîne WIN dans tout le tableau. Les résultats s'affichent dans le rapport d'activation.
:DEFINE &array#, string, 5
:FILL &array#[] = GET_VAR(VARA.WIN, AGENTS)
:SET &search# = FIND(&array#[], "WIN", 1)
:WHILE &search# <> 0
:PRINT "WIN found at position &search#"
:SET &search# = &search# + 1
:SET &search# = FIND(&array#[], "WIN", &search#)
:ENDWHILE
Voir aussi :