source: _old/nawszelkiwypadek/tools/gue_dic/count_prefs.pl @ 93afab8

Last change on this file since 93afab8 was a6e708f, checked in by tom <tom@…>, 13 years ago

ANULOWANIE POPRZEDNIEGO COMMITU

Revert "Replacing old implementation with working implementation"

This reverts commit 1e121f45e2d091fcd34a893291b8453e350d5884.

Please enter the commit message for your changes. Lines starting
with '#' will be ignored, and an empty message aborts the commit.

Committer: tom <tom@lim.(none)>

On branch master
Changes to be committed:

(use "git reset HEAD <file>..." to unstage)

modified: _old/app/Makefile
deleted: _old/app/conf/Makefile
deleted: _old/app/conf/compiledic.conf
deleted: _old/app/conf/cor.conf
deleted: _old/app/conf/dgc.conf
deleted: _old/app/conf/dgp.conf
deleted: _old/app/conf/gph.conf
deleted: _old/app/conf/grp.conf
deleted: _old/app/conf/gue.conf
deleted: _old/app/conf/kor.conf
deleted: _old/app/conf/lem.conf
deleted: _old/app/conf/mar.conf
deleted: _old/app/conf/ser.conf
deleted: _old/app/conf/utt.conf
modified: _old/app/src/common/Makefile
modified: _old/app/src/compiledic/Makefile
modified: _old/app/src/compiledic/aut2fsa.cc
modified: _old/app/src/cor/Makefile
modified: _old/app/src/dgp/Makefile
new file: _old/app/src/dgp/canonize
new file: _old/app/src/dgp/dgc
modified: _old/app/src/dgp/grammar.hh
modified: _old/app/src/dgp/mgraph.hh
modified: _old/app/src/dgp/sgraph.hh
modified: _old/app/src/dgp/thesymbols.hh
new file: _old/app/src/dgp/tre
modified: _old/app/src/gue/Makefile
modified: _old/app/src/gue/guess.cc
modified: _old/app/src/kor/Makefile
modified: _old/app/src/kor/corlist.cc
modified: _old/app/src/kor/corr.cc
new file: _old/app/src/kor/corr.hh
modified: _old/app/src/kor/main.cc
modified: _old/app/src/lem/Makefile
modified: _old/app/src/lem/lem.cc
modified: _old/app/src/lib/Makefile
modified: _old/app/src/lib/auttools.cc
modified: _old/app/src/lib/symtab.cc
modified: _old/app/src/lib/tft.h
modified: _old/app/src/lib/tfti.h
modified: _old/app/src/lib/ttrans.h
modified: _old/app/src/lib/word.cc
modified: _old/app/src/lib/word.h
modified: _old/app/src/tok.c/Makefile
modified: _old/app/src/tok.c/cmdline_tok.ggo
modified: _old/app/src/tok.c/common_tok.cc
modified: _old/app/src/tok/Makefile
modified: _old/nawszelkiwypadek/tools/aut2fsa
modified: _old/nawszelkiwypadek/tools/cor_dic/makeLabels.pl
modified: _old/nawszelkiwypadek/tools/cor_dic/prep.pl
modified: _old/nawszelkiwypadek/tools/fsm2aut
modified: _old/nawszelkiwypadek/tools/gue_dic/canon.pl
modified: _old/nawszelkiwypadek/tools/gue_dic/compile_user_dict.pl
modified: _old/nawszelkiwypadek/tools/gue_dic/count_prefs.pl
modified: _old/nawszelkiwypadek/tools/gue_dic/cut_prefs.pl
modified: _old/nawszelkiwypadek/tools/gue_dic/makeLabels.pl
modified: _old/nawszelkiwypadek/tools/gue_dic/prep.pl
modified: _old/nawszelkiwypadek/tools/gue_dic/prep_user_dict.pl
modified: _old/nawszelkiwypadek/tools/gue_dic/rmDup.pl
modified: _old/nawszelkiwypadek/tools/gue_dic/stat.pl
modified: _old/nawszelkiwypadek/tools/gue_dic/stat_pre.pl
modified: _old/nawszelkiwypadek/tools/lem_dic/makeLabels.pl
modified: _old/nawszelkiwypadek/tools/lem_dic/prep.pl
modified: auto/defaults
modified: auto/options
modified: auto/output/Makefile
modified: auto/output/config_h
modified: auto/summary
modified: configure

  • Property mode set to 100755
File size: 1.4 KB
Line 
1#! /usr/bin/perl
2
3use locale;
4use strict;
5
6my @prefs;
7
8sub addPref {
9
10    my $pref = shift;
11    my $desc = shift;
12    my $i;
13    for ($i=0; $i< @prefs; ++$i) {
14        my @tab = @{$prefs[$i]};
15        if (${@{$prefs[$i]}}[0] =~ /^$pref/) {
16            ${@{$prefs[$i]}}[1]{$desc}++;
17            return;
18        }
19    }
20    my @new;
21    my %hash;
22
23    $hash{$desc}++;
24    push(@new, $pref);
25    push(@new, \%hash);
26
27    push(@prefs, \@new);
28}
29
30sub printPrefs {
31
32    my $i;
33    for $i (@prefs) {
34        my @tab = @$i;
35#       print $tab[0]."\t";
36        my $pref = $tab[0];
37        my %hash = %{$tab[1]};
38        my @keys = keys(%hash);
39#       print(@keys."\n");
40        my $sum = 0;
41        my $key;
42        for $key (@keys) {
43            $sum += $hash{$key};
44        }
45        for $key (@keys) {
46            print $pref."\t";
47            print $key."\t";
48            print $hash{$key}."\t";
49            print $sum."\n";
50        }
51    }
52}
53
54if (@ARGV < 2) {
55    print "USAGE: count_prefs.pl MIN_PREF_LEN MAX_PREF_LEN\n";
56    exit;
57}
58
59my $MIN = shift;
60my $MAX = shift;
61my $PART = shift;
62
63if ($MIN > $MAX) {
64    print "MIN_PREF_LEN > MAX_PREF_LEN! ($MIN > $MAX)\n";
65    exit;
66}
67my $begin = "";
68while (<>) {
69    my $len = $MIN;
70    $_ =~ /(\w+);(.*)$/;
71    my $pref = $1;
72    my $desc = $2;
73    if ($begin eq "")  {
74        $begin = substr($pref, 0, $MIN);
75    }
76    if ($pref !~ /^$begin.*/) {
77        printPrefs();
78        undef(@prefs);
79        $begin = "";
80    }
81    while ($len <= $MAX) {
82        addPref(substr($pref, 0, $len++), $desc);
83    }
84}
85
86printPrefs();
Note: See TracBrowser for help on using the repository browser.