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

Langage PHP Discussion :

Extrait chiffre sans les . (point) [RegEx]


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 2
    Par défaut Extrait chiffre sans les . (point)
    Bonjour,

    Dans une chaine tel l'exemple ci-dessous, je cherche a extraire une reférence codée de 10 chiffres :
    a) le "P" devant P8905.405.005 est un identifiant
    b) je veux retirer les "."
    c) Résultat souhaité : 8905405005

    chaine :
    Regular exp1253ress235.25 12/01/2011 io25.12.2010 ns can be a pain. This tool is designed to help developers learn, practice, and compose regular expressions. P8905.405.005dqsd123556qsdqsd
    Je n'arrives pas à trouver la bonne expression
    quelqu'un a-t-il une réponse ?

    MaxMax14

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Montre nous ce que tu as fais pour qu'on puisse te corriger.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre Expert
    Avatar de ska_root
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    1 203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Service public

    Informations forums :
    Inscription : Août 2005
    Messages : 1 203
    Par défaut
    Bonjour,

    si ton format de chaine ne change pas :
    je ferais ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <?php
     
    $text= "P8905.405.005";
    $ex= "#\w(\d+)\.(\d+)\.(\d+)#";
    $text= preg_replace($ex, "$1$2$3", $text);
    echo $text;
     
    ?>
    mais il y a peut-être plus simple...


  4. #4
    Expert confirmé

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $text = 'P8905.405.005';
    echo substr(str_replace('.', '', $text), 1);

  5. #5
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Sauf que la chaine ne se limite pas à ca.

    Si la structure chiffres/points est variable :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $ex= "#\w([\d\.]+\d)#";
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  6. #6
    Membre Expert
    Avatar de ska_root
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    1 203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Service public

    Informations forums :
    Inscription : Août 2005
    Messages : 1 203
    Par défaut
    excuse-moi d'intervenir sabotage mais je crois que ta regex inclue les points dans la capture...


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

Discussions similaires

  1. [Toutes versions] EAN13 sans les chiffres
    Par olaf_le_preux dans le forum VBA Access
    Réponses: 2
    Dernier message: 30/01/2011, 19h01
  2. [MySQL] Extraire le texte d'une phrase sans les chiffres
    Par lordlifen dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 03/09/2010, 13h25
  3. [RegEx] Garder les chiffres et les points-virgules
    Par olibara dans le forum Langage
    Réponses: 3
    Dernier message: 12/05/2010, 22h34
  4. [RegEx] Regex autorisant les chiffres et les virgules (ou point)
    Par inmotion dans le forum Langage
    Réponses: 6
    Dernier message: 01/02/2009, 17h57
  5. Tracer une ligne droite sans les interruptions
    Par Stef784ever dans le forum x86 16-bits
    Réponses: 4
    Dernier message: 25/11/2002, 01h22

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