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 :

Aide sur une expression régulière toute simple


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 21
    Points : 22
    Points
    22
    Par défaut Aide sur une expression régulière toute simple
    Bonjour à tous,

    Je voudrais remplacer dans un texte tous les -5xxxx- par &#5xxxx;
    (xxxx etant un nombre)

    Voici le code que j'utilise :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $article = eregi_replace('-5(.*)-','&#//1;', $article);
    Cela marche bien si une seule occurance est utilisé, mais si j'en met plusieurs a la suite il va me prendre le premier "-5" qu'il trouve et va chercher le dernier "-".

    J'ai essayé comme ca mais cela ne semble pas non plus marcher :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $article = eregi_replace('-5(....)-','&#//1;', $article);
    Quelqu'un aurait il la solution ?

    Merci d'avance

  2. #2
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var_dump(preg_replace('/-5(....)-/','&#$1;', 'texte -5abcd- texte -5wxyz- texte'));
    me donne cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    string(33) "texte &#abcd; texte &#wxyz; texte"
    C'est ce que tu veux ?

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 21
    Points : 22
    Points
    22
    Par défaut
    Oui ca marche

    Pour bien comprendre ce que tu as fait, tu as utilisé les / pour determiner les limites de l'occurence recherché ?

    Merci en tout cas !

  4. #4
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    non c'est juste la syntaxe pour preg...
    J'm'y connais pas trop en expressions regulières je ne peux te dire plus en détails à quoi servent ces /. Note que tu peux les remplacer par #, |, bref ca sert apparemment de délimiteurs. plein d'infos ici =>
    http://www.expreg.com/pcre.php

Discussions similaires

  1. [RegEx] Aide sur une expression régulière
    Par steller dans le forum Langage
    Réponses: 3
    Dernier message: 08/02/2012, 13h54
  2. Demande d'aide sur une expression régulière
    Par bubulemaster dans le forum Débuter
    Réponses: 4
    Dernier message: 03/04/2008, 13h19
  3. Un peu d'aide sur une expression régulière particulier
    Par ruana dans le forum Général Python
    Réponses: 2
    Dernier message: 03/06/2007, 19h04
  4. Besoin d'aide pour une expression régulière
    Par planetiss dans le forum Langage
    Réponses: 5
    Dernier message: 16/02/2006, 19h04
  5. Problème sur une expression régulière
    Par Verbal-Quint dans le forum Langage
    Réponses: 6
    Dernier message: 12/11/2004, 10h54

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