welcome to reichelt.vip, home of the ultrakurzanleitung

Muster finden, vor oder hinten denen etwas nicht steht


rvip perl Etwas zu suchen, vor dem etwas steht, ist ziemlich einfach.

print $1 if /stehtdavor(dasinteressiertmich)/;

Spannender ist allerdings die Frage, wie man etwas findet, vor dem etwas nicht steht. Dazu gibt es bei den Regulären Ausdrücken den Negative Lookbehind.

So findet das Muster

/(?<!(Eis|Braun))bär/

 alle Bärenarten außer Eisbär und Braunbär.

Jemand hier, der das nicht auch fantastisch findet?

Wird aber noch besser. Es gibt das Ganze auch, um etwas zu finden, dem etwas anderes nicht folgt. Das ist dann der Negative Lookahead.

So finden wir alle Eisbären ohne Verfolger mit

/Eisbär(?!jäger)/

.

Das soll den Regulären Ausdrücken erstmal einer nachmachen…

Date: June 2nd at 5:17pm
Author: Jens Reichelt
Tags: perl, regex

PREVIOUS NEXT