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] code Perl


Sujet :

Langage Perl

  1. #1
    Membre actif

    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    87
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 87
    Points : 281
    Points
    281
    Par défaut [langage] code Perl
    bonjour,

    qq1 pourrait-il m'expliquer ce code Perl :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    sub is_regex { 
    return eval { m!$_[0]!; 1; }; 
    }
    qui est censé tester si une expression est régullière...
    que signifie m!$_[0]! ?


    merci d'avance

  2. #2
    En attente de confirmation mail
    Inscrit en
    Mars 2002
    Messages
    67
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 67
    Points : 75
    Points
    75
    Par défaut
    m! ! est l'opérateur de recherche de correspondance (souvent on utilise plutôt m/ / et $_[0] est le premier indice du tableau @_ qui contient les paramètres passés à la fonction, donc $_[0] est le premier paramètre passé à ta fonction.

  3. #3
    Membre actif

    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    87
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 87
    Points : 281
    Points
    281
    Par défaut fonction eval
    en réalité, ce que je ne comprend pas bien, c la fonction eval :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    return eval { m!$_[0]!; 1; };
    pourquoi a-t-on 1; ?

  4. #4
    En attente de confirmation mail
    Inscrit en
    Mars 2002
    Messages
    67
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 67
    Points : 75
    Points
    75
    Par défaut
    je n'utilise jamais eval, mais voilà ce que moi je comprends (à vérifier donc...)

    eval va exécuter chacune des expressions:
    - m!$_[0]!
    - 1

    normalement, la valeur renvoyée par eval va être celle de la dernière expression, donc 1 si tout se passe bien.
    si il y a une erreur d'exécution (sur la première expression), eval va renvoyer une valeur indéfinie.

    donc, en gros, si ta fonction retourne 1 => ok, sinon => pas ok.

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

Discussions similaires

  1. [langage]Compilateur PERL
    Par major2 dans le forum Langage
    Réponses: 4
    Dernier message: 07/02/2007, 21h52
  2. [langage] code ascii en Perl
    Par intox18 dans le forum Langage
    Réponses: 3
    Dernier message: 18/01/2005, 09h35
  3. Réponses: 3
    Dernier message: 02/09/2002, 18h49
  4. [langage] Comparer Perl avec d'autres langages comme C ?
    Par Anonymous dans le forum Langage
    Réponses: 3
    Dernier message: 10/08/2002, 23h52

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