Philipp Hasenfratz: Datei durchsuchen und bestimmte Teile speichern, sowie ausgeben

Beitrag lesen

Halihallo bovo

open(DATEI, "<text.txt") || die " File not found.";
@tests = <DATEI>;
    while(! eof(DATEI)){

Stopp. Du liest die gesamte Datei in ein Array ein und machst eine While bis das
Dateiende erreicht wird, welches eigentlich bereits eingetreten ist und du gar nicht
mehr in der Datei nach vorne liest (sprich eof ist immer true)?

@tests =~ /(.*),(.*)/;

Ein split ist hier wesentlich performanter und sicherer:

foreach (@tests) {
   my @parts = split(/,/,$_);  # du hast sowohl Dateidaten, als auch Parts im selben
         # array gespeichert, das _kann nicht gut kommen_.
   # do something with @parts
}

perldoc -f split

printf "$1 und $2 \n";

printf sollte ohne Formatierung und Platzhalter vermieden werden, verwende hier einfach
print. printf ist unsicher und aperformant.

aus perldoc -f printf:
<cite>
            Don't fall into the trap of using a "printf" when a simple
            "print" would do. The "print" is more efficient and less error
            prone.
</cite>

Viele Grüsse

Philipp

--
RTFM! - Foren steigern das Aufkommen von Redundanz im Internet, danke für das lesen der Manuals.
Selbstbedienung! - Das SelfForum ist ein Gratis-Restaurant mit Selbstbedienung, Menüangebot steht in den </faq/> und dem </archiv/>.