Norbert Klein: split als regulärer Ausdruck

Beitrag lesen

Hallo Lena,

du kannst durchaus split verwenden, um die Zeichenkette aufzuteilen. Es gibt die Möglichkeit mit regulären Ausdrücken voraus und zurück zu schauen [1], hierbei wird kein Zeichen "gefressen".

Dein Script könnte dann entsprechend so ausschauen:

#!perl -w

use strict;

my $text = "+eins+zwei+drei";
my @liste = split(/(?=+)/,$text);
print join("\n",@liste);

Das (?=+) schaut hierbei nach, ob das nächste Zeichen ein Plus ist und wenn dem so ist, wird an der Stelle vor dem Plus ein Schnitt gemacht.

Schöne Grüße,

Norbert

[1] http://perldoc.perl.org/perlretut.html#Looking-ahead-and-looking-behind