Beat: File Syntax??

Beitrag lesen

ich möchte nochmals nachhaken damit ich es beim nächsten posten besser mache.
Du meintest ja ich hätte die "Syntax des Files" nicht erklärt.
Ich würde wirklich gerne wissen welche Informationen notwendig sind oder wie du das meinst?

Du hast uns Kostproben des Files gezeigt und schnippsel deiner Format-Einsicht offenbart.
Das ist keine Formatbeschreibung.

Eine Bescheibung könnte lauten:

()?  = 0 oder 1 Vorkommen
()*  = 0 oder mehrere Vorkommen
()+  = 1 oder mehr Vorkommen
( | ) = alternative

WS (= Whitespace) = ( "[\ \t]" )+
LF (= Linefeed)   = "\n"
MARK              = "*"
NCH (Normalcharacter) = "[A-Za-z0-9]"
NSC (NoMarkNoWhitespaceNoLinefeed-Character) = "[^*\s\n]"
NLF (NoLinefeed-Charakter) = [^\n]
OPT (Option)      = MARK (NCH)+
PAR (Paramter)    = MARK (NCH)+
VAL (Wert)        = NSC ( ( NLF )* NSC )?
     Whitepsace und MARK können in VAL vorkommen,
     aber nicht am Anfang oder Ende

RECORD = OPT WS PAR (WS VAL)? ( WS PAR (WS VAL)? )? (WS)? LF
FILE = ( RECORD | NONERECORD )+

Auch wenn es keine Perl Syntax ist, ist das Format verständlich.
Zumindest lässt sich daraus ein RE basteln.

Ich würde eine zweistufige RE verwenden.

Auch das würde mich interessieren wie du hier vorgehen würdest.

Wenn ich mir bezüglich dem Format eines Files nicht sicher bin, schreibe ich mir ein Script, das mir erlaubt, das Format zu eruieren.
Dazu ist es wichtig, zu erfahren, welche Zeilen zutreffen, und welche Zeilen nicht zutreffen, und ihr Format als Error auszugeben.

Da * ein kritisches Zeichen ist, würde ich im File natürlich den Gebrauch dieses Zeichens eruieren. Desgleichen der Gebrauch von Whitespace.
Wenn ich dann eine Syntax beschreiben kann, die alle Tests (auch absurde eigene Tests) besteht, kann ich hoffen, dass das Einlesen in die Datenbank funktionieren kann.

mfg Beat

--
Woran ich arbeite:
X-Torah
   <°)))o><                      ><o(((°>o