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 :

[langage] split avec deux motifs (Newbie)


Sujet :

Langage Perl

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 1
    Points : 2
    Points
    2
    Par défaut [langage] split avec deux motifs (Newbie)
    Salut tout le monde,

    je cherche à récupérer le texte compris entre deux balises HTML du style <title> mon titre </title> ... J'avais pensé utilisé substr, mais visiblement c'est plutot déconseillé parce que ça peut etre assez lent. Je pensais me servir d'un split, mais il n'accepte qu'un seul délimiteur (alors qu'il m'en faut 2 pour identifier ma chaîne : <title> et </title>). Est-ce que je dois bidouiller quelque chose ou est-ce qu'il existe une fonction qui soit prévu pour ça ?

    Merci d'avance!
    Ruamsog II

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    103
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2004
    Messages : 103
    Points : 66
    Points
    66
    Par défaut
    Essaye plutot une expression reguliere, comme ca:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    #Tu  saisie ta ligne HTML
    my $texte=<title>mon titre</title>;
     
    #Si ta ligne ressemble à l'expression suivante
    if($texte =~ /<title>(.*)</title>;/)
    {
                #Alors $1 contiendra tous les caractères situé entre tes deux     
                #balise title
                print $1;
    }
    Voila...ca devrait le faire...
    << Qui pisse face au vent......se rince les dents >>

    ***{:-} Kenavo!!!!

  3. #3
    Jeh
    Jeh est déconnecté
    Membre actif Avatar de Jeh
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    203
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 203
    Points : 250
    Points
    250
    Par défaut
    Citation Envoyé par gracouille
    Essaye plutot une expression reguliere, comme ca:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    #Tu  saisie ta ligne HTML
    my $texte=<title>mon titre</title>;
     
    #Si ta ligne ressemble à l'expression suivante
    if($texte =~ /<title>(.*)</title>;/)
    {
                #Alors $1 contiendra tous les caractères situé entre tes deux     
                #balise title
                print $1;
    }
    Voila...ca devrait le faire...
    J'ai noté une petite boulette dans ta regexp :
    $texte =~ /<title>(.*)</title>;/
    Le "/" doit être précédé d'un anti-slash '\'. Et rajoute un "i" après le dernier slash, de manière à ce que la casse ne soit pas prise en compte. Soit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if ($texte =~ /<title>(.*)<\/title>;/i)
    Verre vide je te plains, verre plein, je te vide.

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

Discussions similaires

  1. Motif avec deux couleurs
    Par ML0808 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 02/04/2008, 15h39
  2. Ecrire un projet Web avec deux langages
    Par rabddoul dans le forum Framework .NET
    Réponses: 3
    Dernier message: 02/03/2007, 16h24
  3. [langage] Problem avec split
    Par Ludo167 dans le forum Langage
    Réponses: 4
    Dernier message: 08/07/2004, 14h42
  4. [langage] probleme avec un hash de hash
    Par planetevoyage dans le forum Langage
    Réponses: 4
    Dernier message: 06/06/2003, 12h55

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