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 rationelle [Fait] [RegEx]


Sujet :

Langage PHP

  1. #1
    Invité
    Invité(e)
    Par défaut Expression rationelle
    Salut à tous, j'ai un petit problème ...(c'est pas vrai ? )
    Mon problème consiste en le fait que je doit rendre dans un forum un lien cliquable si jamais il commence par http://**puis espace...
    J'avais pensé recherché ce morceau ajouté <a href=" au début et ">*</a> à la fin
    Ou * représente l'adresse précédente je fait comment pour la "double"...

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 278
    Points : 1 639
    Points
    1 639
    Par défaut
    Qu'est-ce que c'est, la "double" ?

  3. #3
    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
    C'est quoi la question ?
    EDIT: grilled

  4. #4
    Membre expérimenté

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 278
    Points : 1 639
    Points
    1 639
    Par défaut
    Citation Envoyé par Mr N.
    C'est quoi la question ?
    EDIT: grilled
    Grillé au centième de seconde

  5. #5
    Invité
    Invité(e)
    Par défaut
    Oula ça répond au quart de tours ici (bravo pour la rapidité !!)

    En fait je doit avoir l'adresse deux fois !
    Une fois pour le a href= et une autre pour mettre entre les <a></a>, je fait comment pour la copié ???
    (c'est ça le sens de double !)

  6. #6
    Membre expérimenté

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 278
    Points : 1 639
    Points
    1 639
    Par défaut
    Bein... tu la mets dans une variable, que tu envoies 2 fois. Non ?

  7. #7
    Invité
    Invité(e)
    Par défaut
    Et comment on fait pour la mettre dans une variable ??
    En fait je débute et j'ai prété mon livre sur le PHP au début des vacances :oops: :evil:

  8. #8
    Membre expérimenté

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 278
    Points : 1 639
    Points
    1 639
    Par défaut
    Tu fais un ereg, en rajoutant en 3e argument une variable. Elle contient toutes les occurences dans ton texte qui vérifient ton expression régulière. Tu n'as plus qu'à enlever l'espace final, et le tour est joué.
    Je te conseille fortement de télécharger le manuel php (sous format chm, c'est le plus simple), il explique très clairement toutes les fonctions.
    Pour les regex, voici un très bon tutoriel : http://cyberzoide.developpez.com/php4/regex/.
    Bon courage !

  9. #9
    Invité
    Invité(e)
    Par défaut
    Ok merci :D

  10. #10
    Invité
    Invité(e)
    Par défaut
    Resalut...
    J'ai encore un petit soucis...
    J'ai bien réussit à faire ce que je voulais, mais si jamais il y a deux adresses dans le message elles sont considérés comme une seule .
    Exemple : mon script est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <?
    $message="Super\nhttp://membres.lycos.fr/rtcwolf bthg thg http://cqzvzrv drhyhyhfh";
    $query="(http://(.+)[[:space:]])";
    $message=ereg_replace($query,"<a href=\"\\0\">\\0</a>",$message);
    echo $message;
    ?>
    Elle me renvoie comme code HTML :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Super
    <a href="http://membres.lycos.fr/rtcwolf bthg thg http://cqzvzrv ">http://membres.lycos.fr/rtcwolf bthg thg http://cqzvzrv </a>
    mais je ne vois pas du tout d'ou viens l'erreur...
    Merci de m'aidez...

  11. #11
    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
    n'utilise pas ereg, mais preg...

  12. #12
    Invité
    Invité(e)
    Par défaut
    Je suis désolé mais le problème demeure...

    Et pourtant avec ça les deux ne sont pas considérés comme une :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $message="zvqr valide ezFVRF valide FZFVRVR";
    $query="(valide)";
    $message=preg_replace($query,"correct",$message);
    echo $message;
    Peut être parce que j'ai pas mis de $, mais ça marche pas quand j'essaye, faut le placer ou ?
    Avant ], après ] mais avec des parenthèses, etc...

    EDIT : j'y suis arrivé c'était bête comme choux...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $query="(http://([[:alnum:]|/|\.]+)([[:space:]])+)";

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 25/06/2009, 03h43
  2. probleme avec expression rationelle
    Par blaise4714 dans le forum Langage
    Réponses: 2
    Dernier message: 11/03/2009, 14h15
  3. [C#]Assembleur & Expression Rationell
    Par nephhh dans le forum C#
    Réponses: 2
    Dernier message: 19/07/2007, 14h26
  4. [RegEx] Expression rationelle ;)
    Par Invité dans le forum Langage
    Réponses: 1
    Dernier message: 01/05/2006, 15h59
  5. Réponses: 5
    Dernier message: 11/06/2002, 15h21

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