Hallo zusammen,
ich muss 2 Texte auf Änderungen vergleichen (wie diff unter Linux) d.h. die Änderungen auch mit + bzw. - aufzeigen.
Gut funktioniert u.g. Script - allerdings kann ich damit gar nichts anfangen, da ich nicht weiß, wie ich die Dumper-Werte weiter verarbeiten soll/kann (es gibt $VAR1=... zurück, will ich diese Variable aber nutzen, steht sie nicht zur Verfügung...).
Außerdem stört mich die Ausgabe:
$VAR1 = [ [ '-', 'ist' ], [ '-', 'text' ], [ '+', 'Text' ], [ '+', '.' ] ];
Ich brauche eigentlich
@diff=('-|ist','-|text'...)
aber immer wenn ich etwas an der map Zeile änder funktioniert gar nichts mehr...
Kann mir bitte jemand weiterhelfen und evtl. das Script anpassen oder mir sagen, wie ich das diff Problem sonst lösen kann (das Diff Modul steht nicht zur Verfügung)
Vielen Dank im Voraus.
Viele Grüße
Lavender
Hier das Script:
#!/usr/bin/perl
use Data::Dumper;
my (%ha, %hb);
my @a = ('dies','ist','ein','test','text','');
my @b = ('','dies','','ein','Text','test','.');
@ha{@a} = (1) x @a;
@hb{@b} = (1) x @b;
my @diff = ( (map { ['-', $_] } grep { !($hb{$_}) } @a),
(map { ['+', $_] } grep { !($ha{$_}) } @b) );
print "Content-type: text/html\n\n";
print Dumper (@diff);