Hallo zusammen,
Ich habe zwar eine Lösung mit Hilfe reulärer Ausdrücke gefunden.
mich würde einfach mal eure Meinung interessieren ob es vielleicht eine bessere oder einfachere Lösung gibt.
Folgendes:
Es gibt verschiedene Textdateien (eigentlich sind es Beschreibungs / Konfigurationsdateien)die jeweils mehrere 1000 Zeilen enthalten können.
Unter anderem gibt es viele Zeilen bzw. eine Rubrik die aufgebaut ist wie folgt:
*UIConstraints: *EFOutputBin Lower *EFPrintSize A6
*UIConstraints: *EFPrintSize A6 *EFOutputBin Lower
*UIConstraints: *EFOutputBin Lower *EFPrintSize A6.IMG-AREA.FullBleed
*UIConstraints: *EFPrintSize A6.IMG-AREA.FullBleed *EFOutputBin Lower
*UIConstraints: *EFDocServer *InputSlot Tray1
*UIConstraints: *InputSlot Tray1 *EFDocServer
*UIConstraints: *EFDuplex *EFMediaInterlv
*UIConstraints: *EFMediaInterlv *EFDuplex
Fester Bestandteil ist immer der Zeilen Beginn mit;
*UIConstraints:
Desweiteren gibt es immer zwei Optionen die immer mit * beginnen.
Danach kommt der dazugehörige Wert getrennt von Blanks.
Wie man aber an der letzten Zeile sieht kann es auch Zeilen geben die keine Werte haben.
Ich möchte die Zeilen wie folgt in einer DB speichern.
Option1 Wert1 Option2 Wert2
---------------------------------------------------------------------
EFOutputBin Lower EFPrintSize A6
Wie gesagt habe ich eine Lösung mit Regulären Ausdrücken aber da eigentlich alle möglichen Zeichen vorkommen können, wird das ganze dadurch sehr erschwert.
Könnte man vielleicht auch die Zeilen mit "file()" in ein Array lesen und dann versuchen mit "explode" nach leerstellen die einzelnen Elemente herauszufiltern?
Mich würde einfach interessieren wie ihr Experten dies angehen würdet.
vielen Dank und viele Grüße
hawk