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 Perl Discussion :

Probleme Expression reguliere


Sujet :

Langage Perl

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 38
    Par défaut Probleme Expression reguliere
    Bonjour,

    J'aimerai faire une expression régulière qui me remplace tous mes <a href par une autre syntaxe mais je n'y arrive pas....

    J'ai par exemple :

    <a href="/monsite/toto.aspx" class="maclass">mon texte</a>

    et je veux que tous mes liens qui ont la balise <a href...> se transforme ainsi :

    <novo:hyperlink runat="server" cssclass="maclass" href="/monsite/toto.aspx">mon texte</novo:hyperlink>

    Pouvez vous m'éclairer sur la syntaxe a mettre en place pour le faire ??

    merci

  2. #2
    Membre averti Avatar de philouelgeek
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    60
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2010
    Messages : 60
    Par défaut
    Salut,

    Je pense que cette syntaxe devrait fonctionner :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
     
    use strict;
    use warnings;
     
    my $var = "<a href=\"/monsite/toto.aspx\" class=\"maclass\">mon texte</a>";
    $var =~s/<a/<novo:hyperlink runat="server" cssclass="maclass"/g;
    Je l'ai testé et a priori ça marche
    @++

  3. #3
    Expert confirmé

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2009
    Messages
    3 577
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2009
    Messages : 3 577
    Par défaut
    Il faut y ajouter :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $var =~ s/<\\a>/<\/novo:hyperlink>/g;

  4. #4
    Responsable Perl et Outils

    Avatar de djibril
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    19 822
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 19 822
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    my $var ='<a href="/monsite/toto.aspx" class="maclass">mon texte</a>';
    $var =~ s{<a href="(.+?)" class="(.+?)">(.+)</a>}{<novo:hyperlink runat="server" cssclass="$2" href="$1">$3</novo:hyperlink>}gi;
    print $var;

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 38
    Par défaut
    merci beaucoup...

  6. #6
    Expert confirmé

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2009
    Messages
    3 577
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2009
    Messages : 3 577
    Par défaut
    Attention qu'en même djibril, au cas des newline entre les balises HTML

  7. #7
    Responsable Perl et Outils

    Avatar de djibril
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    19 822
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 19 822
    Par défaut
    Citation Envoyé par Philou67430 Voir le message
    Attention qu'en même djibril, au cas des newline entre les balises HTML
    C'est sûr, d'où l'intérêt de toujours utiliser un vrai parseur de html. Car la gestion des cas particuliers devient très vite laborieuse.

  8. #8
    Membre averti Avatar de philouelgeek
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    60
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2010
    Messages : 60
    Par défaut
    Citation Envoyé par Philou67430 Voir le message
    Il faut y ajouter :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $var =~ s/<\\a>/<\/novo:hyperlink>/g;
    J'ai testé sans et ça marche

  9. #9
    Expert confirmé

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2009
    Messages
    3 577
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2009
    Messages : 3 577
    Par défaut
    Sauf erreur, tu ne modifies pas la balise de fin

  10. #10
    Membre averti Avatar de philouelgeek
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    60
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2010
    Messages : 60
    Par défaut
    Oups j'avais mal lu, autant pour moi

    Shame on me

Discussions similaires

  1. [langage] Probleme expression régulière
    Par killuaster dans le forum Langage
    Réponses: 5
    Dernier message: 29/10/2006, 20h21
  2. Probleme expressions regulieres
    Par Mr_Chut dans le forum C
    Réponses: 13
    Dernier message: 11/07/2006, 18h27
  3. [RegExp] Problèmes expressions régulières
    Par Bluespike62 dans le forum Langage
    Réponses: 34
    Dernier message: 07/02/2006, 13h33
  4. [langage] Ptit Probleme expression réguliere avec perl
    Par Shoot Again dans le forum Langage
    Réponses: 3
    Dernier message: 02/12/2004, 13h44
  5. [langage] problème expression régulière
    Par chtiboss dans le forum Langage
    Réponses: 6
    Dernier message: 05/01/2004, 17h08

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