Hallo,
ich möchte Teile eines regulären Ausdruckes negieren. Hier ein paar Beispielzeilen aus einer Textdatei, um darin per grep zu suchen:
123456;763483;abc 223344;123746;efg 123456;194763;xxx 223344;187635;yyy
Mit diesem Ausdruck matchen alle Zeilen, welche mit 123456 beginnen:
^(123456);[0-9]{6};[a-z]+
Nun möchte ich aber genau das Gegenteil: Match aller Zeilen, die eben NICHT mit 123456 beginnen, aber den Rest des Ausdruckes erfüllen.
^(^123456);[0-9]{6};[a-z]+
Ich dachte, ich kann das mit ^negieren. Es matchen aber die gleichen Zeilen wie vorher. Denkfehler? Wobei mir das jetzt ohnehin unvollständig erscheint: Es sollten alle Zeilen passen, welche mit sechs Ziffern hintereinander beginnen, aber nicht 123456. Hat jemand eine Idee?
Danke Grafinger