Hallo,
^([A-Za-z0-9]+);([01]?);([01]?);([01]?);[1]?;([01]);([01]);([01]);([01])
Der sollte eigentlich auf
STBK038N;1;1;1;;0;0;0;0;0;0
STBKNBWXP004;1;1;1;1;1;0;0;0;0;0
STBKWSWXP020;1;;0;;0;0;0;0;0;0matchen, richtig?
Eigentlich ja. Aber das [1]? sieht etwas seltsam aus. Wenn nur ein einzelnes Zeichen in den eckigen Klammern steht, kann man die gleich weglassen, also einfach 1? schreiben.
Leider tut es das bei mir nicht.
Ich benutze Notepad++ dafür, da mir die Quelldaten nur in der CSV-Datei vorliegen.
Diese Syntax gilt auch für Notepad++. Bist du sicher, dass es nicht matcht?
Wenn ja: Fangen die fraglichen Zeilen auch wirklich mit "STBK" an?
Natürlich matcht der RegEx nicht nicht die ganze Zeile, da die [01]? -ähnlichen Patterns nur 8 mal im RegEx vorkommen, aber immer 10 davon vorghanden sind. Übrigens kannst du maximal 9 Klammerungen (...) verwenden, wenn du nachher z.B. mit \1, \2 ersetzen willst. Wenn nicht, lass die runden Klammern weg.
Gruß, Don P