Forum Programmation.perl Récupérer une variable / index

Posté par  .
Étiquettes : aucune
0
24
fév.
2010
Bonjour,

je me suis mise au perl et j'ai quelques soucis ...

dans un fichier je cherche le premier mot clé d'une ligne (les autres même mots clés des autres lignes m'importe peu..)

comment puis je extraire cette ligne? jai essayer avec 'index' mais....
si j'utilise index comment puis je lui dire que c'est que le premier mot clé et non pas chaque apparition de ce mot?
  • # Pas tout compris

    Posté par  . Évalué à 1.

    Je n'ai pas compris ce que tu veux dire avec 'index' mais voilà un bout de code qui devrait te permettre de récupérer le premier mot (alphanumérique, sans espace, tabluation etc) de chaque ligne d'un fichier.


    open FILE, ">file.txt" or die "Cannot open file : $! \n";
    for my $line(<FILE>){
    $line=~ /^(\w+)/;
    print $1,"\n"; # premier mot de la ligne
    }
    • [^] # Re: Pas tout compris

      Posté par  . Évalué à 1.

      non désolé si je me suis mal exprimée
      'index' c'est la fonction qui permet de chercher un mot clé .
      et mon soucis c'est:
      -je voudrais extraire la ligne qui contient un mot clé
      _avec comme contrainte "extraire seulement la première ligne" qu'il vas trouver en parcourant mon fichier
      • [^] # Re: Pas tout compris

        Posté par  . Évalué à 1.

        salut,

        Oui mais index ne te donnera pas la ligne mais la position du mot :

        #!/usr/bin/perl -w
        $a="Trois, Deux, Un, Départ";
        $b=index ($a, "roi");
        print "La reponse est : $b \n";


        Ce script va afficher 1 dans la variable $b. La lettre T étant en position zéro. Si index n'avait pas trouvé, $b aurait pris la valeur -1.
        En espérant aider.........
      • [^] # Re: Pas tout compris

        Posté par  (site web personnel) . Évalué à 2.

        while (<>) {
        print and last if /$motclef/;
        }

        pertinent adj. Approprié : qui se rapporte exactement à ce dont il est question.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.