Comment utiliser la fonction FIND dans SAS (avec exemples)
Vous pouvez utiliser la fonction FIND dans SAS pour rechercher la position de la première occurrence d’une sous-chaîne dans une chaîne.
Voici les deux manières les plus courantes d’utiliser cette fonction :
Méthode 1 : Trouver la position de la première occurrence d’une chaîne
data new_data;
set original_data;
first_occurrence = find(variable_name, "string");
run;
Méthode 2 : Trouver la position de la première occurrence d’une chaîne (en ignorant la casse)
data new_data;
set original_data;
first_occurrence = find(variable_name, "string", "i");
run;
L’argument «i» indique à SAS d’ignorer la casse lors de la recherche de la sous-chaîne.
Les exemples suivants montrent comment utiliser chaque méthode avec l’ensemble de données suivant dans SAS :
/*create dataset*/
data original_data;
input phrase $1-25;
datalines;
The fox ran fast
That is a quick FOX
This fox is a slow fox
The zebra is cool
;
run;
/*view dataset*/
proc print data=original_data;
Exemple 1 : Rechercher la position de la première occurrence d’une chaîne
Le code suivant montre comment trouver la position de la première occurrence de « fox » dans chaque chaîne :
data new_data;
set original_data;
first_fox = find(phrase, "fox");
run;
Voici comment interpréter le résultat :
- Le renard a couru vite (la première occurrence est en position 5 )
- C’est un FOX rapide (la chaîne minuscule « fox » n’apparaît jamais)
- Ce renard est un renard lent (la première occurrence est en position 6 )
- Le zèbre est cool (La chaîne « renard » n’apparaît jamais)
Exemple 2 : Rechercher la position de la première occurrence d’une chaîne (en ignorant la casse)
Le code suivant montre comment trouver la position de la première occurrence insensible à la casse de « fox » dans chaque chaîne :
data new_data;
set original_data;
first_fox = find(phrase, "fox", "i");
run;
Voici comment interpréter le résultat :
- Le renard a couru vite (la première occurrence est en position 5 )
- C’est un rapide F OX (la première occurrence de « fox » est en position 17 )
- Ce renard est un renard lent (la première occurrence est en position 6 )
- Le zèbre est cool (La chaîne « renard » n’apparaît jamais)
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans SAS :
Comment normaliser les données dans SAS
Comment remplacer des caractères dans une chaîne dans SAS
Comment remplacer les valeurs manquantes par zéro dans SAS
Comment supprimer les doublons dans SAS