![](https://seccdn.libravatar.org/avatar/3315311bb8e9e2e94780da1ac1b7f51d.jpg?s=120&d=mm&r=g)
Hallo Martin, * Martin schrieb am 04.09.2003:
Am Thursday 04 September 2003 11:40 schrieb Bernd Brodesser:
* Martin Borchert schrieb am 04.Sep.2003:
Am Thursday 04 September 2003 02:23 schrieb Thomas Preissler:
Gegeben sei folgendes: -------- foobar blabla... ofobar blabla... oofbar blabla... oobfar blabla... oobafr blabla... oobarf blabla... foboar blabla... ... -------- Wie müsste ein regulärer Ausdruck aussehen, dass er alles matcht, aber nicht die Zeilen, in denen 'foobar' am Anfang steht. Das kann nicht funktionieren. Was soll er denn alles finden? Er findet doch in der ersten Zeile foobar am Anfang, gut, daß nicht, aber soll er das foo von foobar finden, oder das f oder das bar oder das ar oder das bla oder das r bl oder das ....
Er soll alles finden, es sei denn, am Anfang steht 'foobar'.
Du siehst, es ist nicht eingrenzbar.
Ja, den Eindruck hatte ich heute Nacht auch. Konnte mir das aber nicht vorstellen. Ich lebte bis ungefähr heute morgen um 2 in der Traumwelt, dass man mit RegExen in perl/php alles machen könnte.
Mal etwas spezifischer: Ich suchte nach etwas in der Richtung /^([^foobar]) .*$/blabla/ Wobei aber foobar als eine Zeichen_kette_ und nicht als Zeichen_klasse_ interpretiert werden soll. Also wenn das erste Wort ein anderes ist als 'foobar' soll es durch 'blabla' ersetzt werden.
Ein solchen RegEx wirst Du nicht finden, bzw. den gibt es nicht. Wie Bernd schon geschrieben hat, die Möglichkeiten wären unendlich, und da gibt's keinen RegEx dafür. Ein RegEx ist nur ein endlicher Automat, da das Alphabet auch endlich ist. Du kannst Dir nur behelfen, indem Du überprüfst ob "foobar" am Anfang steht, und wenn nicht, dass dann weitergehende Aktionen geschehen. Grüße, Tom