for ($i = 0; $i <= $#ARGV; $i++) { open FILE, "<$ARGV[$i]" or die "Cannot open file $ARGV[$i]!\n"; $filename = $ARGV[$i]; while() { $text = $_; while( $text =~ /(\\newcount|\\newtoks|\\newdimen|\\newif|\\let|\\([exg]|char|toks|count)*def)\w*(\\[a-zA-Z@]+)/g ) { $cs = $3; push @all, $cs; if ( defined $secse{$cs}->{$filename} ) { $secse{$cs}->{$filename}++; } else { $secse{$cs}->{$filename} = 1; }; } } } #print keys %secse; @alphsecs = sort keys %secse; foreach $ocs (@alphsecs) { print "$ocs %"; @fnames = sort keys $secse{$ocs}; foreach $fname (@fnames) { print " $fname ($secse{$ocs}->{$fname} occurence"; if ( $secse{$ocs}->{$fname} > 1 ) {print "s";} print ")"; } print "\n"; } print "\n"; $i = $#alphsecs; $i++; print "total sequences: $i\n";