[LUGOS] stetje besed v datoteki

Matija Grabnar matija.grabnar at arnes.si
Mon Jan 2 12:26:12 CET 2006


On Mon, Jan 02, 2006 at 11:50:57AM +0100, cefe wrote:
> Hojla!
> 
> Imam zanimivo vprasanje, in sicer, kako bi prestel stevilo pojavljanj vsake 
> besede v datoteki, ne samo ene izbrane besede?
> Ali je kdo ze kdaj kaj takega poizkusal?
> Za tocno izbrano besedo znam narediti, ampak, da bi programcek pokazal vse 
> besede v datoteki in se stevilo pojavljanja vsake besede, to pa mi je ze 
> prevec ...
> Posamezno besedo iscem na sledec nacin:
> grep 223 123.txt|wc  --words
> in to dela ...

perl -e 'while(<>) {@words=split(/\W+/,$_); foreach $word (@words) {$cnt{$word}++}}; foreach (keys %cnt) {print "$cnt{$_} $_\n"}' 123.txt


Mimogrede, tvoja dosedanja metoda daje napacne rezultate:
cat /tmp/foo.txt 
bla bla bla foo
foo foo
arg arg arg foo

grep bla /tmp/foo.txt |wc  --words
4

grep foo /tmp/foo.txt |wc  --words
10

Tole je pa rezultat moje skripte:
3 arg
3 bla
4 foo


More information about the lugos-list mailing list