Also so schwer ist das ja eigentlich nicht. In die Funktion rein geht der String vom Server, wahrscheinlich wird da was geloggt. Rauskommen soll der in seine Bestandteile zerlegte String.
procedure SplitLogLine(LogLine: string; out TimeStamp: string; out Indent1: string; out Indent2: string; out LogMessage: string);
Das sagt eigentlich schon alles, was passieren soll.
Jetzt haben wir noch den Aufbau von dem String der vom Server kommt:
Code:
[TimeStamp]:<Indent1><Indent2>LogMessage
Mit Pos und PosEx kann ich jetzt nach "[", "]", "<" und ">" suchen und mit Copy die Bestandteile in die out Parameter kopieren. Kein Problem. Eigentlich nur eine Fingerübung, wenn da jetzt nicht noch eine kleine Gemeinheit wäre. So wie es aussieht, ist Inden2 optional, also nicht in jeder LogLine enthalten. Aber auch das lässt sich lösen, in dem man eine Fallunterscheidung macht in Abhängigkeit von der Anzahl der "<".
Ich denke, das sollte auch für einen Anfänger lösbar sein. Sieh und Zweck der Übung ist es wohl, dass ihr die Zeichenmanipuilationsroutinen (Pos, PosEx, Copy, Delete) von Delphi kennen lernen sollt.
So, deswegen guck mal in der Hilfe, was die Routinen machen und wie man sie anwendet. Wenn du das verstanden hast, sollte es kein Problem sein, die Aufgabe zu lösen.