Thread while bzw. Datei durchsuchen, Hilfe gesucht (14 answers)
Opened by optron at 2008-04-29 01:48

optron
 2008-04-29 01:48
#108962 #108962
User since
2008-04-29
3 Artikel
BenutzerIn
[default_avatar]
Hallo
erstmal zum Sachverhalt. Ich hab eine Quelle.dat in folgendem Format
KN P 5612|rot|Opel|Hans Spiddel|
FN KT 2|gruen|VW|Michael Kohlhaas|
VS RT 926|rot|Opel|Peter Pan|

jetzt will ich das Kennzeichen eingeben und perl soll mir alle daten einer zeile angeben und die andern nicht.
ich dachte ich löse das mal auf die nachfolgende art. leider klappt es nicht. kann mir einer von euch weiterhelfen ich komme einfach nicht weiter.

Mal als ganzes Beispiel ich geb den wert ein "rot"
dann soll dieses ergebnis rauskommen

"KN P 5612 Hans Spiddel Opel rot
VS RT 926 Peter Pan Opel rot"

was heißt ist der wert in mehr als einer zeile sollen alle möglichen ergebnise gezeigt werden mit allen daten.

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#!/usr/bin/perl

$wert= <STDIN>;

$gefunden = 0;

open(LESEN,"<Quelle.dat") or scripterror("Fehler: Kann Quelle.dat nicht oeffnen!",$!);
while ($linie = <LESEN>) {
chomp($linie);

($Kennzeichen,$Farbe,$Marke,$Halter) = split(/|/, $linie);

if ($wert eq $Kennzeichen or $Farbe or $Marke or $Halter ) {

$gefunden = 1;
last;
}
}
close(LESEN);

if (!$gefunden) {
print "Nicht gefunden!!!";
exit;
} else {
print "$Kennzeichen\n";
print "$Halter\n";
print "$Marke\n";
print "$Farbe\n";
}

View full thread while bzw. Datei durchsuchen, Hilfe gesucht