zum Vergleichen Ich bin ein Neuling in Perl-Skripten. Ich habe 2 Dateien. Ich möchte Inhalte zeilenweise vergleichen und die passenden löschen. Wenn ich eine Wildcard in einer Datei verwende, um mehrere Zeilen in der zweiten Datei abzugleichen, sollten mehrere Übereinstimmungen gelöscht und der Rest in eine andere Datei geschrieben werden. Ich habe ein bisschen von einer anderen Mail, es kümmert sich nicht um Wild CardsPerl-Code Dateiinhalt
use strict;
use warnings;
$\="\n";
open my $FILE, "<", "file.txt" or die "Can't open file.txt: $!";
my %Set = map {$_ => undef} <$FILE>;
open my $FORBIDDEN, "<", "forbidden.txt" or die "Can't open forbidden.txt: $!";
my %Forbidden = map {$_ => undef} <$FORBIDDEN>;
open my $OUT, '>', 'output' or die $!;
my %Result = %Set; # make a copy
delete $Result{$_} for keys %Forbidden;
print $OUT keys %Result
http://www.perlmonks.org/?node_id=1163469 – choroba
Versuchen Sie, 'forbidden.txt' Sie mit Ausschluss bieten Muster zu haben? Oder muss der Inhalt dieser Datei der Reihe nach angewendet werden? Es sieht ein bisschen wie eine Aufgabe für 'Grep' aus. –
Was meinst du mit "Wild Cards"? – choroba