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 :

signe > dans condition if


Sujet :

Langage Perl

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 98
    Points : 67
    Points
    67
    Par défaut signe > dans condition if
    Bonjour,

    J'ai un texte de la forme : >texte
    je veux tester chaque fois si la phrase commence ou pas par le signe >, voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(substr($temp[0], 0, 1)  = '>' )
    mais il affiche toujours que c'est faux!
    POURQUOI?

  2. #2
    Mr6
    Mr6 est déconnecté
    Membre éclairé

    Homme Profil pro
    Inscrit en
    Septembre 2004
    Messages
    607
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2004
    Messages : 607
    Points : 794
    Points
    794
    Par défaut
    tu peux faire ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    if ($temp[0] =~ /^\>/)

  3. #3
    Membre expert
    Avatar de 2Eurocents
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    2 177
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 2 177
    Points : 3 166
    Points
    3 166
    Par défaut Re: signe > dans condition if
    Citation Envoyé par ibtisss
    Bonjour,

    J'ai un texte de la forme : >texte
    je veux tester chaque fois si la phrase commence ou pas par le signe >, voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(substr($temp[0], 0, 1)  = '>' )
    mais il affiche toujours que c'est faux!
    POURQUOI?
    PARCEQUE !!!!!

    Parce que le test d'égalité, lorsqu'il s'agit de chaines de caractères, se fait avec l'opérateur eq.

    En outre, un test d'égalité, lors d'opérations numériques, se fait au moyen de l'opérateur ==.

    L'usage de l'opérateur = est à réserver exclusivement aux affectations de valeurs.

    En plus, dans le cas présent, pas de bol, la fonction substr est lvaluable, ce qui signifie qu'elle a le droit de se retrouver en partie gauche d'une affectation. Donc le code que tu as écrit se contente de mettre un '>' dans toutes les chaines que tu testes, et de retourner au test un résultat comme quoi il a bien fait la substitution. Pas cool, non ?

    Essayes plutôt :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (substr ($temp[0], 0, 1) eq '>' )
    La FAQ Perl est par ici
    : La fonction "Rechercher", on aurait dû la nommer "Retrouver" - essayez et vous verrez pourquoi !

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

Discussions similaires

  1. [Système] Problème de syntaxe dans condition
    Par pierrot10 dans le forum Langage
    Réponses: 10
    Dernier message: 09/10/2006, 14h10
  2. [Débutant]Le signe dollar $ dans le profiler
    Par Djakisback dans le forum NetBeans
    Réponses: 5
    Dernier message: 02/06/2006, 20h55
  3. etbinaire oubinaire dans conditions ...
    Par Christophe Charron dans le forum SQL Procédural
    Réponses: 9
    Dernier message: 06/05/2006, 10h12
  4. Erreur dans conditions SQL*Loader
    Par mike_made dans le forum SQL
    Réponses: 5
    Dernier message: 05/05/2006, 16h19
  5. Probleme avec le signe & contenu dans un parametre d'une
    Par Ludo_xml dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 22/08/2005, 15h45

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