Meine Eingabedatei sieht wie folgt aus:
HEADER
{ABC|*|DEF {GHI 0 1 0} {{Points {}}}}
{ABC|*|DEF {GHI 0 2 0} {{Points {}}}}
{ABC|*|XYZ:abc:def {GHI 0 22 0} {{Points {{F1 1.1} {F2 1.2} {F3 1.3} {F4 1.4}}}}}
{ABC|*|XYZ:ghi:jkl {JKL 0 372 0} {{Points {}}}}
{ABC|*|XYZ:mno:pqr {GHI 0 34 0} {{Points {}}}}
{
ABC|*|XYZ:abc:pqr {GHI 0 68 0}
{{Points {{F1 11.11} {F2 12.10} {F3 14.11} {F4 16.23}}}}
}
TRAILER
Ich möchte die Datei in ein Array extrahieren, wie unten dargestellt:
$array[0] = "{ABC|*|DEF {GHI 0 1 0} {{Points {}}}}"
$array[1] = "{ABC|*|DEF {GHI 0 2 0} {{Points {}}}}"
$array[2] = "{ABC|*|XYZ:abc:def {GHI 0 22 0} {{Points {{F1 1.1} {F2 1.2} {F3 1.3} {F4 1.4}}}}}"
..
..
$array[5] = "{
ABC|*|XYZ:abc:pqr {GHI 0 68 0}
{{Points {{F1 11.11} {F2 12.10} {F3 14.11} {F4 16.23}}}}
}"
Das heißt, ich muss die erste öffnende geschweifte Klammer mit der schließenden geschweiften Klammer abgleichen und die dazwischen liegende Zeichenkette extrahieren.
Ich habe mir den unten stehenden Link angesehen, aber er trifft nicht auf meine Frage zu. Regex zum Ermitteln der Zeichenkette zwischen geschweiften Klammern "{Ich will das, was zwischen den geschweiften Klammern steht}"
Ich versuche es, aber es wäre wirklich hilfreich, wenn mir jemand mit seinem Fachwissen helfen könnte ...
Danke Sri ...