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 :

Expression régulière : valeur entre 2 caractères


Sujet :

Langage PHP

  1. #1
    Membre actif
    Inscrit en
    Février 2009
    Messages
    616
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 616
    Points : 249
    Points
    249
    Par défaut Expression régulière : valeur entre 2 caractères
    Bonjour,

    Savez-vous comment faire pour récupérer une valeur numérique située entre 2 caractères dans une chaine ?
    ... je cherche par exemple à récupérer la valeur qui se trouve entre le A et U ou autre exemple, entre U et L, etc.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $reference = "A02U51L2M17Z17";
    $recherche = '#A(.*)U#';
    echo preg_match_all($recherche, $reference);
    En vous remerciant par avance,


  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    c'est le B-A-Ba :




    "expressions régulières"

    On peut tester ici (par exemple) : https://regex101.com/

  3. #3
    Membre actif
    Inscrit en
    Février 2009
    Messages
    616
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 616
    Points : 249
    Points
    249
    Par défaut
    [QUOTE=jreaux62;9636705]
    c'est le B-A-Ba :
    Votre B-A-Ba ne semble pas fonctionner malgré mon rhume épouvantable

    en fait je souhaite retourner la valeur trouvée sou forme d'une chaine, exemple : entre A et U la valeur est 02 mais si je fais ceci j'obtient un tableau, je souhaite obtenir une chaine contenant la valeur "02" ou autre...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $recherche = '#b(.*)l#';
    preg_match($recherche, $reference, $out); 
    print_r($out);

    Remerciement,

  4. #4
    Membre actif
    Inscrit en
    Février 2009
    Messages
    616
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 616
    Points : 249
    Points
    249
    Par défaut
    Autre exemple de B-A-Ba...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $reference = "A02U51L2M17Z17";
    $recherche = '#b(.*)l#';
    preg_match($recherche, $reference, $out); 
    echo substr($out[0], -3, -1); // Retourne bien =>02
    mais si :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $reference = "A402U51L2M17Z17";
    
    echo substr($out[0], -3, -1); // Retourne =>02 au lieu de => 402
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $reference = "A8U51L2M17Z17";
    
    echo substr($out[0], -3, -1); // Retourne =>A8 au lieu de => 8
    Auriez-vous une solution à ce problème de débutant ?

    Merci d'avance

  5. #5

  6. #6
    Membre actif
    Inscrit en
    Février 2009
    Messages
    616
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 616
    Points : 249
    Points
    249
    Par défaut
    Super merci, je comprends mieux mon erreur maintenant ainsi que le fonctionnement du retour de preg_match.


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

Discussions similaires

  1. Expression régulière : "n'importe quel caractère"
    Par Thordax dans le forum Langage
    Réponses: 6
    Dernier message: 30/03/2010, 15h36
  2. Réponses: 6
    Dernier message: 29/06/2009, 13h32
  3. Réponses: 4
    Dernier message: 14/11/2008, 21h00
  4. Réponses: 6
    Dernier message: 20/06/2008, 13h02
  5. Réponses: 4
    Dernier message: 24/08/2005, 18h40

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