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

MATLAB Discussion :

Récuperer une suite de chiffre dans une suite de caractère sans espace


Sujet :

MATLAB

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 15
    Points : 10
    Points
    10
    Par défaut Récuperer une suite de chiffre dans une suite de caractère sans espace
    Bonjour à tous.

    J'essaye de récupérer( sans succès ) une suite de chiffres dans une suite de caractère. J'utilise la fonction sscanf qui transforme les caractères en nombres , mais j'ai quelques soucis avec les options.
    Voilà la cause de mes problèmes : Data = '1Tp012345'
    je dois récupérer les derniers chiffres ( 012345)
    Alors j'ai essayé un sscanf(Data,%3f,%f) mais cela ne me convient pas ( erreur en lien avec la dimension d'une matrice)
    Pourriez vous me guider ?

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2007
    Messages : 58
    Points : 69
    Points
    69
    Par défaut
    Tu devrais pouvoir y arriver en utilisant les expression régulières qui sont implémentées dans Matlab.

    Si tout tes suite de caractères sont similaires ce sera:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    STR=regexp(Data,'.\D+(\d+)','tokens')
    Tu auras une cell avec tes digits. Après une conversion du genre:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    str2num(cell2mat(STR{1}))
    te permet de récupérer ton nombre dans une variable.

  3. #3
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 302
    Points : 53 166
    Points
    53 166
    Par défaut
    Une autre solution :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    >> idx = find(isletter(Data),1,'last')
     
    idx =
     
         3
     
    >> Data(idx+1:end)
     
    ans =
     
    012345
    Ingénieur indépendant en mécatronique - Conseil, conception et formation
    • Conception mécanique (Autodesk Fusion 360)
    • Impression 3D (Ultimaker)
    • Développement informatique (Python, MATLAB, C)
    • Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)

    « J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2007
    Messages : 58
    Points : 69
    Points
    69
    Par défaut
    La solution de Dut est certainement plus efficace ... Perl me perdra...

Discussions similaires

  1. Réponses: 3
    Dernier message: 23/01/2012, 14h50
  2. Réponses: 1
    Dernier message: 26/12/2010, 21h20
  3. [RegEx] comment prélever une suite de chiffres dans une chaine
    Par thor76160 dans le forum Langage
    Réponses: 2
    Dernier message: 19/03/2010, 11h29
  4. Suite de chiffre dans une colonne
    Par hassan1234 dans le forum Excel
    Réponses: 1
    Dernier message: 08/08/2008, 12h24
  5. Vérifier la suite de chiffres dans une image
    Par Dsphinx dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 27/12/2006, 21h20

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