#!/usr/bin/perl -w # count_tokens.pl - Don Yang (uguu.org) # # 07/20/08 use strict; my $text = join '', <>; my %tokens; while( $text ne '' ) { if( $text =~ s/^\s*([A-Za-z0-9_]+)(.*)$/$2/s ) { $tokens{$1}++; } else { $text =~ s/^\s*[^A-Za-z0-9_](.*)$/$1/s or last; } } foreach my $i (sort {$tokens{$b} <=> $tokens{$a} || $a cmp $b} keys %tokens) { print "$tokens{$i} $i\n"; }