Thread Problem mit Schreiben eines RegEx-Pattern in Datei (2 answers)
Opened by Gast at 2006-07-20 12:34

Gast Gast
 2006-07-20 12:34
#10730 #10730
Hallo,

ich möchte folgendes erreichen: Etwas in einer Datei finden und nur das gefundene (+ Zusatztext) in eine neue Datei schreiben.

Mein Skript sieht wiefolgt aus:

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#!/usr/bin/perl -w

use strict;

print "Die Datei wird nun bearbeitet ...!\n";

open(DATEI, "</home/user/perl/wirrwarr.txt") || die "Datei nicht gefunden";
my @ArrayEins = <DATEI>;
close(DATEI);

my @ArrayZwei;
foreach(@ArrayEins){
$_=~ s/([A-Za-z0-9_.-]+@[A-Za-z0-9_]+\.+[A-Za-z]{2,4})/MAILADDY $1 ENDE/g;
push(@ArrayZwei,$_);
}
open(DATEI, ">/home/user/perl/neue_datei.txt") || die "Datei nicht
gefunden";
print DATEI @ArrayZwei;
close(DATEI);

Ich habe zum Testen das Matchen von E-Mail-Adressen gewählt. Im "Endprodukt" sollen mir aus einer HTML-Datei Zahlen gematcht werden, die ich dann beschrifte (vgl. "MAILADDY [Match] ENDE" im Beispiel).

Er matcht mir mit meinem Skript nun die E-Mail-Adressen und umschließt sie mit "MAILADDY" und "ENDE". Nun soll dies in neue_datei.txt geschrieben werden und nur dies, nicht, was sonst noch in der wirrwarr.txt steht.

View full thread Problem mit Schreiben eines RegEx-Pattern in Datei