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 :

PHP et expressions rationnelles [RegEx]


Sujet :

Langage PHP

  1. #1
    stk
    stk est déconnecté
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 12
    Points : 12
    Points
    12
    Par défaut PHP et expressions rationnelles
    Salut,
    J'ai un petit souci de traitement d'un texte saisi à l'aide d'un formulaire!

    Un fois que le formulaire est traité, je lance une fonction (voici juste les lignes qui peuvent être intéressantes),

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    function tagtohtml ($texte) {
     
      $texte=strip_tags($texte);
     
      $texte=nl2br($texte);
     
      $texte=preg_replace('/\<font color="(.*?)"\>(.*?)\<\/font\>/','[color=$1]$2[/color]',$texte);
     
      return $texte;
     
    }
    Donc jusque là pas de problème. Si la phrase est sur une seule ligne ca marche, mais si le texte est sur plusieurs lignes ca ne marche plus, je me doute que c'est à cause du (.*?) mais je ne vois pas comment faire pour que les <br /> soient analysés.
    J'ai aussi pensé à mettre cette ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $texte=preg_replace('/\<font color="(.*?)"\>(.*?)\<\/font\>/','[color=$1]$2[/color]',$texte);
    , avant le nl2br, pour mettre (.*?\r\n) mais c'est toujours pareil!

    Voila, merci d'avance

  2. #2
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 199
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 199
    Points : 8 424
    Points
    8 424
    Billets dans le blog
    17
    Par défaut
    Le méta-caractère . ne prend pas par défaut les retours à la ligne.
    => Pour ce faire utilise l'option s
    http://www.php.net/manual/fr/referen....modifiers.php

  3. #3
    stk
    stk est déconnecté
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 12
    Points : 12
    Points
    12
    Par défaut
    beaucoup, je ne savais pas que l'on pouvait utiliser des options!
    En tout cas ca donne le résultat que je souhaitais!

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

Discussions similaires

  1. [RegEx] expression rationnelle par php pour requete mysql
    Par dgedge dans le forum Langage
    Réponses: 2
    Dernier message: 13/12/2006, 09h47
  2. Non ambiguïté d'expressions rationnelles
    Par David.Schris dans le forum Algorithmes et structures de données
    Réponses: 22
    Dernier message: 27/12/2005, 16h11
  3. [RegEx] Images et expression rationnelle
    Par Invité dans le forum Langage
    Réponses: 7
    Dernier message: 30/10/2005, 15h50
  4. Réponses: 2
    Dernier message: 21/02/2005, 10h42
  5. [langage] Expressions rationnelles (perl/C)
    Par ma2th dans le forum Langage
    Réponses: 11
    Dernier message: 02/08/2004, 18h07

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