Langage perl

Fermé
debuttant - 13 janv. 2012 à 16:34
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 - 14 janv. 2012 à 14:22
Bonjour,


je debute avec le langage perl et je voudrais savoir comment et creer un fichier inverse ?
comment se fait la lecture dans un fichier texte mot a mot.
merci
A voir également:

1 réponse

lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 567
Modifié par lami20j le 14/01/2012 à 19:03
Salut,

http://perl.mines-albi.fr/DocFr/perlfunc.html

Regarde par exemple la fonction open

Aussi les fonctions par catégorie

Fonctions d'entrée/sortie
binmode, close, closedir, dbmclose, dbmopen, die, eof, fileno, flock, format, getc, print, printf, read, readdir, rewinddir, seek, seekdir, select, syscall, sysread, sysseek, syswrite, tell, telldir, truncate, warn, write

Fonctions pour données de longueur fixe ou pour enregistrements
pack, read, syscall, sysread, syswrite, unpack, vec

Fonctions de descripteurs de fichiers, de fichiers ou de répertoires
-X, chdir, chmod, chown, chroot, fcntl, glob, ioctl, link, lstat, mkdir, open, opendir, readlink, rename, rmdir, stat, symlink, sysopen, umask, unlink, utime

Pour lire mot par mot il faut savoir ce qu'on comprends par mot.

aa:bb:cc peut être considéré comme un mot si le caractère se séparation est l'espace.
En revanche on aura 3 mots si le séparateur est :
Ce n'était qu'à titre d'exemple pour comprendre mon affirmation.


Voici un exemple, sur ton message. J'ai considéré que le séparateur est un espace.
lami20j@debian-acer:~/perl$ cat mot_par_mot.pl 
#!/usr/bin/perl 
use strict;use warnings; 
my $n=1; 

while(<DATA>){
  next if /^$/;        # on saute les lignes vides 
  for my $mot(split){  # on separe les mots (espace)
    print "$n. $mot\n";# on affiche les mots  
    $n+=1;             # on compte les mots
  } 
} 

print "Il y a ",$n-1," mots dans DATA\n"; 
__END__ 
Bonjour, 


je debute avec le langage perl et je voudrais savoir comment et creer un fichier inverse ? 
comment se fait la lecture dans un fichier texte mot a mot. 
merci 
lami20j@debian-acer:~/perl$ perl mot_par_mot.pl 
1. Bonjour, 
2. je 
3. debute 
4. avec 
5. le 
6. langage 
7. perl 
8. et 
9. je 
10. voudrais 
11. savoir 
12. comment 
13. et 
14. creer 
15. un 
16. fichier 
17. inverse 
18. ? 
19. comment 
20. se 
21. fait 
22. la 
23. lecture 
24. dans 
25. un 
26. fichier 
27. texte 
28. mot 
29. a 
30. mot. 
31. merci 
Il y a 31 mots dans DATA





lami20j
1