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 :

problème avec preg_replace [RegEx]


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Inscrit en
    Octobre 2005
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 32
    Points : 14
    Points
    14
    Par défaut problème avec preg_replace
    hello,

    J'aimerais remplacer une partie d'un texte dans un fichier. Mais j'ai une erreur que je ne comprend pas, pourriez vous m'aider.....
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo preg_replace("301 => 1234", "301 => 1111",$texte_complet);
    Et j'obtiens cette erreur:
    Warning: preg_replace(): Delimiter must not be alphanumeric or backslash
    Je vérifie si le remplacement est effectué et ce n'est pas le cas....

    Merci de votre aide car je ne comprend vraiment pas ou est l'erreur, j'ai vérifiié la syntaxe, :

  2. #2
    Membre averti Avatar de sohnic
    Femme Profil pro
    bioinfo
    Inscrit en
    Mai 2003
    Messages
    426
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : bioinfo

    Informations forums :
    Inscription : Mai 2003
    Messages : 426
    Points : 434
    Points
    434
    Par défaut
    Bonjour,
    As-tu essayé avec des guillemets simples plutot que doubles ?
    Sohnic

  3. #3
    Membre chevronné
    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 : 55
    Localisation : France

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

    Informations forums :
    Inscription : Août 2005
    Messages : 1 203
    Points : 1 839
    Points
    1 839
    Par défaut
    pour l'utilisation des pcre (preg_replace) tu dois utiliser des délimiteur pour le pattern contrairement a ereg_replace qui utilise les posix...

    donc le pattern devient :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $pattern = "/301 => 1234/";
    allez, courage carlos20.... ;-)

  4. #4
    Membre éclairé
    Avatar de Kioob
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    550
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 550
    Points : 764
    Points
    764
    Par défaut
    ce que je pige pas, c'est à quoi te servent les expressions régulières ici ? str_replace te donnera exactement le même résultat, beaucoup plus rapidement....

  5. #5
    Nouveau membre du Club
    Inscrit en
    Septembre 2005
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 38
    Points : 26
    Points
    26
    Par défaut
    Salut, pourquoi mets-tu ton expression dans un echo ?

  6. #6
    Membre à l'essai
    Inscrit en
    Octobre 2005
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 32
    Points : 14
    Points
    14
    Par défaut
    Hello,

    Merci de votre aide,
    Pour finir j'ai utilisé str_replace et je n'ai eu aucun problème merci bien...

    (J'ai utilisé echo pour voir le résultat)

    A+

  7. #7
    Nouveau membre du Club
    Inscrit en
    Septembre 2005
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 38
    Points : 26
    Points
    26
    Par défaut
    Si tu voulais utiliser du preg, je pense que tu aurais du faire ceci :

    echo preg_replace("!301 => 1234!", "301 => 1111",$texte_complet);


    Il fallait délimiter par des !
    Mais bon si ça fonctionne....

    a+

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

Discussions similaires

  1. [RegEx] Problème avec preg_replace
    Par CapErquy dans le forum Langage
    Réponses: 25
    Dernier message: 14/02/2011, 17h40
  2. [RegEx] problème avec preg_replace
    Par mike_chti dans le forum Langage
    Réponses: 2
    Dernier message: 29/09/2008, 18h12
  3. [RegEx] UTF8, problème avec preg_replace
    Par Space Cowboy dans le forum Langage
    Réponses: 4
    Dernier message: 30/04/2008, 17h42
  4. [RegEx] Problème avec preg_replace
    Par Vinzius dans le forum Langage
    Réponses: 6
    Dernier message: 28/05/2006, 00h10
  5. [RegEx] Problème avec preg_replace
    Par Vinzius dans le forum Langage
    Réponses: 4
    Dernier message: 08/05/2006, 02h06

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