Hi,
erstmal danke fuer eure hilfe, aber leider blicke ich nicht mehr so
ganz durch. also...sorry, wenn ich Dich verwirrt habe.
#!/path/to/perl -w
use strict;was genau ist der grund fuer diesen syntax?
Sichere Programmierung, Fehlervermeidung von Anfang an.
werde mich bemuehen dies jetzt einzufuehren.
for (0..scalar @lines - 1)
sorry aber was heisst/bedeutet scalar?
Ein Skalar ist sozusagen ein nulldimensionales Element - also ein String, eine Zahl usw. Im Gegensatz dazu gibt es die Liste (Arrays, Hashes etc.). Wenn Du ein Array mit dem Keyword "scalar" in den skalaren Kontext zwingst, wird die Zahl der Elemente zurückgegeben.
ah ja, kling ja auch interessant, aber liefert ein normales @lines
nicht auch schon die anzahl der zeilen zurueck?
while ($_ ne '<!--SCRIPTENDE-->') {
nicht so einfach, wegen returns - funzte bei mir so nicht.
Dagegen hilft chomp; aber wegen Leerzeichen an Anfang und Ende halte ich hier eine RegExp schon für okay (obwohl natürlich rechenintensiver).
also mit RegExp meinst du das /../ bzw. !/.../ !?
Wobei diese ganze $_-Zuweiserei vermutlich eher nachteilig ist:
inwiefern?
Könnte von anderen Dingen überschrieben werden.
ist bestimmt ne haeufige fehlerursache !?
for (0..scalar @lines - 1) {
if ($lines[$_] =~ /.../) {scriptstart?
Die Punkte waren als Platzhalter gedacht :-) Der Code ist ansonsten an Deinem orientiert, deswegen habe ich ihn nicht weiter ausgeführt.
sehr schoen, das ich wenigstens etwas scheinbar richtig gemacht habe.
Ich glaube, das ist Absicht - und damit ein wunderbarer Grund, kein for zu benutzen. Setze initial
- absicht: s.o. und 2. was ist initial?
initial = anfangs, zu Beginn (englisch "init")
i speak english very well but leider nich ganz so schnell ;-)
und benutze dann eine while-Schleife, in der _nur Du_ $f erhöhst.
wie meinst du das? _nur Du_
Kein "for" o.ä.
also z.b. $f++
close (DATEI);
Die war schreibend geöffnet, oder? Dann solltest Du auch hier den Fehlercode mit 'or die' oder von mir aus ' &error' abfangen.
tue ich ja.
Nein, denn Du schreibst nicht
close (DATEI) or die "Kann Datei nicht schliessen: $!";
Auch beim Schließen kann es schief gehen, was aber nur bei Schreibzugriffen relevant ist.
ach du beziehst dich hier auf eine eventuelle fehlermeldung.?
das close habe ich aber trotzdem getippt.
ACK :-)
sch... schreibfaulen progammierer ;-) was heisst das?
ACKnowledge = Zustimmung (Gegenteil: NACK)
Das ist übrigens ein häufig verwendetes Steuerzeichen :-)
wird gemerkt...
vielen dank bishierher und ich hoffe ich oute mich nicht zusehr als
perl-neuling ;-)Waren wir doch alle mal.
Cheatah
aller anfang ist schwer ;-) kenne ich von TP und VB und ganz am
anfang 8bit-C64-Basic.
also dann ne ruhige nacht und bye
lars