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

Débutez Discussion :

Extraire une sous chaine numérique en SAS


Sujet :

Débutez

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2012
    Messages
    198
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2012
    Messages : 198
    Par défaut Extraire une sous chaine numérique en SAS
    bonjour,

    voici ma variable:

    siret
    fr01548
    d1578
    12547
    xp7
    lt789
    th

    je veux avoir ça en sortie
    siretv2
    01548
    1578
    12547
    7
    789

    au fait retirer toutes les lettres devant et ne garder que les suites de chiffres.


    je vous remercie.

  2. #2
    Membre Expert

    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mars 2005
    Messages
    1 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 364
    Par défaut
    Tu peux utiliser la fonction translate

  3. #3
    Membre émérite
    Homme Profil pro
    Statisticien/développeur BI
    Inscrit en
    Janvier 2012
    Messages
    326
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Statisticien/développeur BI
    Secteur : Transports

    Informations forums :
    Inscription : Janvier 2012
    Messages : 326
    Par défaut
    ou un compress

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    data matable;
    input siret $10.;
    cards;
    Fr01548
    d1578
    12547
    xp7
    lt789
    th
    ;
    run;
     
    data matable;
    set matable;
    SIRETV2=compress(upcase(siret),'ABCDEFGHIJKLMNOPQRSTUVWXYZ');
    SIRETV3=translate(upcase(siret),'','ABCDEFGHIJKLMNOPQRSTUVWXYZ');
    run;

  4. #4
    Membre confirmé
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2012
    Messages
    198
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2012
    Messages : 198
    Par défaut
    Merci pour votre réponse

    je dois faire un translate pour toutes les lettres en HEXA :



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    data tab1;
       set tab2;
       siret2=translate(siret,' ','4142'x);
    run;

    => '4142'x pour la lettre 'A' ET 'B' et je continue jusqu'à 'Z'?

    j'avoue je n'ai pas trop compris comment faire

  5. #5
    Membre confirmé
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2012
    Messages
    198
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2012
    Messages : 198
    Par défaut
    ah merci!!!!!

    j'ai compris maintenant!!!!

  6. #6
    Modérateur

    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Février 2011
    Messages
    1 625
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2011
    Messages : 1 625
    Par défaut
    Hello,
    tu veux enlever les caractères non numériques ou transformer les caractères non numériques en caractères Hexa ?

    Pour la première :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    DATA matable;
    input siret $10.;
    var_num=prxchange('s/[^0-9] *//',-1, siret)*1;
    cards;
    Fr01548
    d1578
    12547
    xp7
    lt789
    th
    ;
    run;
    N'oubliez pas de consulter les FAQ SAS et les cours et tutoriels SAS
    N'oubliez pas de mettre votre message à si la solution donnée résout votre problème

  7. #7
    Membre confirmé
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2012
    Messages
    198
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2012
    Messages : 198
    Par défaut
    très bien merci beaucoup à tous

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

Discussions similaires

  1. Sed extraire une sous-chaine lettre de lecteur
    Par eZula dans le forum Shell et commandes GNU
    Réponses: 12
    Dernier message: 05/03/2008, 07h34
  2. extraire une sous chaine d'un char*
    Par john123 dans le forum C
    Réponses: 7
    Dernier message: 13/10/2007, 00h20
  3. Extraire une sous-chaine
    Par tomy29 dans le forum Delphi
    Réponses: 5
    Dernier message: 25/07/2007, 12h16
  4. Réponses: 6
    Dernier message: 25/06/2007, 11h00
  5. Réponses: 2
    Dernier message: 09/09/2006, 10h40

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