Comment : |
Langages disponibles : reporting
La fonction POSIT trouve la position de départ d'une sous-chaîne au sein d'une chaîne source. Par exemple, la position de départ de la sous-chaîne DUCT dans la chaîne PRODUCTION est quatre. Si la sous-chaîne ne figure pas dans la chaîne parent, la fonction renvoie la valeur 0.
POSIT(source_string, length, substring, sublength, output)
où :
Alphanumérique
est la constante alphanumérique à analyser entre guillemets simples, ou un champ ou une variable contenant la chaîne de caractères source.
Entier
est le nombre de caractères dans la chaîne source, ou un champ qui contient la longueur. Si l'argument est inférieur ou égal à 0, la fonction renvoie 0.
Alphanumérique
est la sous-chaîne dont la position est ce que vous voulez trouver. Cela peut être une sous-chaîne encadrée par des guillemets simples, ou le champ qui contient la chaîne.
Entier
est le nombre de caractères dans substring. Si cet argument est inférieur ou égal à 0 ou qu'il est supérieur à lenght, la fonction renvoie 0.
Entier
est le champ qui contient le résultat, ou le format de la valeur de sortie entre guillemets simples.
POSIT détermine la position de la première lettre capitale I dans LAST_NAME; le résultat est stocké dans I_IN_NAME :
TABLE FILE EMPLOYEE
PRINT LAST_NAME AND COMPUTE
I_IN_NAME/I2 = POSIT(LAST_NAME, 15, 'I', 1, 'I2');
WHERE DEPARTMENT EQ 'PRODUCTION'
END
La sortie est :
LAST_NAME I_IN_NAME --------- --------- STEVENS 0 SMITH 3 BANNING 5 IRVING 1 ROMANS 0 MCKNIGHT 5
Information Builders |