Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Retourne la position de la première occurrence d'une chaîne dans une autre chaîne.
Syntaxe
InStr([start, ]searched_string, search_string[, compare])
Arguments
start
(Facultatif) Expression numérique qui définit la position de début de chaque recherche. Si cette valeur est omise, la recherche démarre au niveau du premier caractère. Si start est Null, la valeur de retour de fonction n'est pas définie.
searched_string
Expression de chaîne à rechercher.
search_string
Expression de chaîne à rechercher.
Compare
(facultatif) Valeur entière. Cet argument est toujours ignoré. Il est défini pour la compatibilité avec d’autres fonctions Instr dans d’autres langages.
Valeur renvoyée
Valeur entière avec la position de départ de String2 dans String1.
En outre, la fonction InStr retourne les valeurs répertoriées dans le tableau suivant en fonction de la condition :
Condition | Valeur retournée |
---|---|
String1 est de longueur nulle | zéro (0) |
String1 a la valeur null | non défini |
String2 est de longueur nulle | start |
String2 a la valeur null | non défini |
String2 est introuvable | zéro (0) |
start est supérieur à Len(String2) | zéro (0) |
Notes
Avertissement
Instr effectue toujours une comparaison qui ne respecte pas la casse.
Exemple
L’exemple suivant montre l’utilisation de la fonction Instr et montre différents scénarios de résultats.
with
member [Date].[Date].[Results] as "Results"
member measures.[lowercase found in lowercase string] as InStr( "abcdefghijklmnñopqrstuvwxyz", "o")
member measures.[uppercase found in lowercase string] as InStr( "abcdefghijklmnñopqrstuvwxyz", "O")
member measures.[searched string is empty] as InStr( "", "o")
member measures.[searched string is null] as iif(IsError(InStr( null, "o")), "Is Error", iif(IsNull(InStr( null, "o")), "Is Null","Is undefined"))
member measures.[search string is empty] as InStr( "abcdefghijklmnñopqrstuvwxyz", "")
member measures.[search string is empty start 10] as InStr(10, "abcdefghijklmnñopqrstuvwxyz", "")
member measures.[search string is null] as iif(IsError(InStr( null, "o")), "Is Error", iif(IsNull(InStr( null, "o")), "Is Null","Is undefined"))
member measures.[found from start 10] as InStr( 10, "abcdefghijklmnñopqrstuvwxyz", "o")
member measures.[NOT found from start 17] as InStr( 17, "abcdefghijklmnñopqrstuvwxyz", "o")
member measures.[NULL start] as iif(IsError(InStr( null, "abcdefghijklmnñopqrstuvwxyz", "o")), "Is Error", iif(IsNull(InStr( null, "abcdefghijklmnñopqrstuvwxyz", "o")), "Is Null","Is undefined"))
member measures.[start greater than searched length] as InStr( 170, "abcdefghijklmnñopqrstuvwxyz", "o")
select [Results] on columns,
{ measures.[lowercase found in lowercase string]
, measures.[uppercase found in lowercase string]
, measures.[searched string is empty]
, measures.[searched string is null]
, measures.[search string is empty]
, measures.[search string is empty start 10]
, measures.[search string is null]
, measures.[found from start 10]
, measures.[NOT found from start 17]
, measures.[NULL start]
, measures.[start greater than searched length]
} on rows
from [Adventure Works]
Le tableau suivant présente les résultats obtenus.
Champ dans les mesures | Résultats |
---|---|
minuscules trouvées dans la chaîne en minuscules | 16 |
majuscules trouvées dans la chaîne en minuscules | 16 |
la chaîne de recherche est vide | 0 |
la chaîne de recherche est Null | Non défini |
chaîne de recherche est vide | 1 |
la chaîne de recherche est start 10 vide | 10 |
chaîne de recherche a la valeur Null | Non défini |
trouvé à partir de start 10 | 16 |
introuvable à partir de start 17 | 0 |
start Null | Non défini |
start est supérieur à la longueur recherchée | 0 |