Thread Gesetze vergleichen
(3 answers)
Opened by andy at 2013-06-04 15:37
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: Wie frage ich & perlintro brian's Leitfaden für jedes Perl-Problem |