Bonsoir,
Je souhaiterai avoir un petit coup de pouce de votre part pour identifier la position d'un texte dans une chaîne.
J'ai une variable au format caractère qui contient plusieurs "chaines" séparées par un séparateur. Je sais que la fonction INDEX permet de déterminer la position, mais cette fonction indique uniquement la position au sein de la chaîne (variable).
Voici un exemple plus parlant de mon problème :
Je cherche la position de la chaîne AA dans V1 pour pouvoir ensuite extraire cette la valeur que contient cette position dans V2. Étant donné que la longueur entre les "-" est variable, je ne peux pas utiliser la fonction INDEX classique.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 data __test; input v1 $10. v2 $10.; cards; AA-BB-C 10-05-01 AAAA-AA-B 55-15-02 ; run;
Le résultat que je souhaite obtenir :
- "AA" arrive en position 1 sur la ligne 1 --> extraire ce ce qui arrive en position 1 dans V2, soit "10",
- "AA" arrive en position 2 sur la ligne 2 --> extraire ce ce qui arrive en position 2 dans V2, soit "15".
Y a-t-il un moyen de faire ça sur SAS ?
Merci pour votre aide,
alers
Partager