Thread Gesetze vergleichen (3 answers)
Opened by andy at 2013-06-04 15:37

pq
 2013-06-04 15:56
#167987 #167987
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
Das wäre laut Mengenlehre die Differenz.
Du willst alles, was in Menge A ist, aber nicht in B, und umgekehrt.
Betrachte in perl die Hashes als Mengen.
Wenn dich nicht interessiert, ob es in A oder B vorkommt, dann baust du einen Hash auf und inkrementierst jeweils den Wert für ein Gesetz.
Das machst du für beide Dateien und ein und denselben Hash.
Die Gesetze, die als Wert 1 haben, kommen nur in einer Datei vor.
(Duplikate innerhalb einer Datei wieder mal ausgeschlossen).

so vom prinzip her:
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
# iteriere über datei1
$count{ $line }++;
# iteriere über datei2
$count{ $line }++;

for my $key (keys %count) {
    if ($count{ $key } == 1) {
        print "Gesetz $key kommt nur in einer Datei vor\n";
    }
}
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem

View full thread Gesetze vergleichen