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 :

Nettoyer une adresse URL [RegEx]


Sujet :

Langage PHP

  1. #1
    Invité
    Invité(e)
    Par défaut Nettoyer une adresse URL
    Bonjour j'espéres pour mon premier message étre sur le bon forum .
    Je cherche a faire le plus simplement possible un nettoyage d'une URL trés précise que m'envoie mon site sur une de mes page.
    la régle étant toujours la même, et bien que ne comprenant pas encore les regex, je vous poses la question.

    ma forme est toujours celle-ci:
    abstraire-une-photo-1505-1012-voir-e24-une-fois.html#chap4587

    je dois supprimer -e24 et tout ce qui est derriére le # (compris le #)
    les autres parties sont bien sur nimporte quoi , tout est possible SAUF
    jamais d'autre -exx- ni html#
    précision cela peut-étre -e1- -e124- mais toujours -e

    Voila bonne semaine a vous

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $chaine="abstraire-une-photo-1505-1012-voir-e24-une-fois.html#chap4587 ";
    $reg="/(-e\d+)(-[^#]*)#.*/";
     
    echo preg_replace($reg,'$2',$chaine);

  3. #3
    Invité
    Invité(e)
    Par défaut
    Quel puissance cette fonction, et je dois étre loin d'imaginer ce que cela peut faire.
    Un grand merci a toi, et chapeau pour la simplicitée du code

    Si je peux me permettre, j'ais été lire par la recherche le PDF du cours regex, mais j'aimerais aller plus loin, dans vos topos aurastu une adresse a conseiller a grand-débutant.

    Super, en tout cas j'ais testé, et mets résolu.

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    Je t'avouerais qu'en tuto je n'ai pas trouvé grand chose qui m'ait aidé
    je te conseillerais peut etre juste le tuto sur le forum, mais surtout une petit appli qui s'appelle regexSR et une recherche de "regexp cheatsheat " sur google...
    Sinon tu peux casser ta tirelire mais ça en vaut le coup
    http://general.developpez.com/livres...L9780596528126

  5. #5
    Invité
    Invité(e)
    Par défaut
    Je crois vu l'importance que la tirelire va en prendre un coup,
    mais a te lire dans d'autre post ici, ça parait prometteur !

    J' en profites (si c'est facile), dans mon probléme qui est déjas sur mon site,
    pour les cas exeptionnelles (mais ça arrive) ou le html est appelé en haut de page donc sans le # j'ais tout bétement rajouté un #12345
    comme cela ta formule marche même comme cela !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $chaine="abstraire-une-photo-1505-1012-voir-e24-une-fois.html#12345";
    pas terrible mais ça pare le coup, alors toi tu aurais pu le faire d'un coup ?

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $reg="/(-e\d+)(-[^#]*)(#.*)?/";

  7. #7
    Invité
    Invité(e)
    Par défaut
    Voila qui est cadeau . encore merci, en plus j'ais été aidé par un petit débutant ...
    Date d'inscription: mars 2002 et 21.063 messages
    En tout cas je vais éplucher les deux regex pour comprendre comme un grand.
    Un jour ... je l'aurais fait tout seul.

    Bonne semaine

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

Discussions similaires

  1. [MySQL] Nettoyer une adresse email
    Par VooDooNet dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 30/09/2009, 12h07
  2. Tester une adresse URL
    Par acryline dans le forum Langage
    Réponses: 4
    Dernier message: 20/05/2009, 16h58
  3. cacher une adresse url
    Par dieudo dans le forum Langage
    Réponses: 6
    Dernier message: 05/02/2008, 17h00
  4. VB6 Connection à une base de données dont la source est une adresse url
    Par yangoal25 dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 13/11/2006, 18h47
  5. Réponses: 2
    Dernier message: 11/10/2006, 13h37

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