Bonjour j'ai testé pas mal de fonctions sans pouvoir réaliser ce que j'attendais.
dans une variable "manquant", je peux retrouver ceci :
appel_1/class_f/date_ECG/date_F/date_a/
age/
imc/taille/poids
donc dans mes chaines de caractères, je voudrai lui dire que si le dernier "caractère" est un caractère spécial = "/" alors je le supprime.
Voici mon code pour le moment : qui me permet de supprimer les doublons de "//" dans ma chaine de caractères.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| data export2; set export;
format manquant3 $CHAR10000.;
Length manquant3 $ 10000;
do until(index(manquant2,'/ /')=0); /*La boucle sera exécutée tant quun symbole / sera identifié*/
tag_start = index(manquant2,'/ /');
tag_end = index(manquant2,'/ /');
substr(manquant2,tag_start,tag_end-tag_start+1)='';
end;
*manquant3 = TRANWRD(manquant2, " /",""); /*supprime le caractère " /" et remplace par rien*/
manquant3=COMPBL(manquant2);
manquant3=COMPRESS(manquant3);
label Manquant3 = "Liste des variables manquantes";
where c_miss_missing>0;
run; |
la ligne
*manquant3 = TRANWRD(manquant2, " /",""); /*supprime le caractère " /" et remplace par rien*/
me permettait de supprimer le dernier caractère mais il me supprime aussi des "/" dans ma chaîne de caractère.
Pouvez vous m'aider ?
merci par avance
Partager