Thread Regulärer Ausdruck zum Suchen eines Wortes (4 answers)
Opened by Anton Mehl at 2012-07-11 15:33

Gast Anton Mehl
 2012-07-11 15:33
#159744 #159744
Tag,

ich hab ein kleines Problem, wo ich grad festhänge und nicht weiterkomme.

Ausgangssituation:
Ich hab eine Datei, die u.a. folgende Zeilen enthält
"ProductName=LT0G"
"ProductNameShort="

Nun möchte ich die Datei Zeile für Zeile mit einem regulären Ausdruck
nach "ProductName=" prüfen und anschließend alles, was nach dem Gleichzeichen kommt in eine Variablem speichern.

Hier mein bisheriger Code:

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
for (my $z=0; $z<$anzahl_elemente; $z++) {
open (my $fh, '<', $pfade[$z]) or die "Fehler beim Oeffnen: $!";

while (<$fh> && $pruef ==0) {
$_= <$fh>;

if ($_ =~ m/^ProductName=/) {
$teil = substr($_,12, 30);
chomp $teil;
$pruef = 1;
print $teil, "\n";
}
}
}


Was er ausgibt ist die mit substr bearbeitete zweite Zeile, also ProductNameShort=.

Wie kann ich die erste Zeile, wo auch ^ProductName= zutrifft, abfangen??
Weil ich möchte eben das nach dem ProductName= haben und nicht ProductNameShort=.

Danke schonmal für eure Hilfe.
Last edited: 2012-07-11 16:08:00 +0200 (CEST)

View full thread Regulärer Ausdruck zum Suchen eines Wortes