IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SAS Base Discussion :

Fonction pour supprimer des caractères dans un champs texte


Sujet :

SAS Base

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    45
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2008
    Messages : 45
    Points : 31
    Points
    31
    Par défaut Fonction pour supprimer des caractères dans un champs texte
    Bonjour,

    J'ai une base de données où les données non applicables, manquantes ou illisibles sont signalées par la présence de "888". Ainsi dans un champs texte, je peux avoir "le cas n°888 a un 888". Hors je dois transformer les "888" en vide.

    On m'a dit d'utiliser la fonction compress (cf code ci-dessous) pour le faire mais ça ne marche pas correctement : En effet il supprime aussi bien les "8" (d'une date par exemple) que les "888".

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    data batch3.correct6; 
     
    set batch3.correct5;
     
    casenb = compress (casenb,"888");
     
    run;
    Avez-vous une idée de fonction qui pourrais faire ce que je veux?

    Merci d'avance

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 52
    Points : 52
    Points
    52
    Par défaut
    Bonjour,

    Il ne faut pas utiliser compress, compress sert à supprimer la "LISTE" de caractères que tu lui donne, c'est pourquoi il te supprime tout les 8 qu'il rencontre.

    Essaye plutot la fonction :TRANWRD(source,target,replacement)

    Ex. :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    DATA batch3.correct6; 
    SET batch3.correct5;
    casenb = TRANWRD(casenb,"888","") ;
    run;

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    45
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2008
    Messages : 45
    Points : 31
    Points
    31
    Par défaut
    ça marche nickel

    Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2003] Supprimer des caractères dans un champ de requete
    Par facteur dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 31/07/2013, 13h00
  2. [AC-2007] Supprimer des caractères dans un champ.
    Par jmlabatut dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 07/12/2009, 13h09
  3. Réponses: 7
    Dernier message: 09/02/2009, 14h28
  4. Réponses: 2
    Dernier message: 18/05/2006, 13h38
  5. fonction pour interdire un caractere dans un champ en php
    Par carmen256 dans le forum Langage
    Réponses: 2
    Dernier message: 15/03/2006, 22h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo