zeichenkette gruppieren

hallo

ich sollte eine zeichenkette gruppieren:

alus tttttttttttttttttttt
wird ttttt-ttttt-ttttt-ttttt

gibt es eine eleganterer (und vor allen kürzere)
Lösung als substr()?

irgendwie mit $1 $2 $3 $4?


greets
-/--\-
alex
Scotter [ Fr, 25 August 2006 09:32 ] [ ID #1444656 ]

Re: zeichenkette gruppieren

Post removed (X-No-Archive: yes)
Notifier Deamon [ Fr, 25 August 2006 10:20 ] [ ID #1444657 ]

Re: zeichenkette gruppieren

Martin Trautmann schrieb:
> On Fri, 25 Aug 2006 09:32:34 +0200, Alex Kainz wrote:
>>
>> ich sollte eine zeichenkette gruppieren:
>>
>> alus tttttttttttttttttttt
>> wird ttttt-ttttt-ttttt-ttttt
>>
>> gibt es eine eleganterer (und vor allen kürzere)
>> Lösung als substr()?
>>
>> irgendwie mit $1 $2 $3 $4?
>
> s/(.{5})(.{5})(.{5})(.{5})/$1-$2-$3-$4/
>
> Vermutlich geht's noch einfacher, aber das sollte erst mal taugen,

Eine Möglicheit:
s/[^-]{5}(?!$)/$&-/g;

MfG
-Christian
Christian Winter [ Fr, 25 August 2006 20:26 ] [ ID #1444663 ]

Re: zeichenkette gruppieren

> s/(.{5})(.{5})(.{5})(.{5})/$1-$2-$3-$4/
>
> Vermutlich geht's noch einfacher, aber das sollte erst mal taugen,
> Martin

danke, das ist super kurz und vor allem übersichtlich!

greets
-/--\-
alex
Scotter [ Sa, 26 August 2006 09:02 ] [ ID #1445551 ]

Re: zeichenkette gruppieren

Christian Winter wrote:
> Eine Möglicheit:
> s/[^-]{5}(?!$)/$&-/g;
>

Hallo Christian, das funktioniert zwar,
aber enthaelt $& und das ist ein performance killer, der sich auf die
performance _aller_ regex-auswertungen in dem Programm auswirkt.

Siehe perldoc perlre

besser waere s/([^-]{5})(?!$)/$1-/g;

greets Steffen
Steffen Panning [ Mo, 28 August 2006 21:52 ] [ ID #1447472 ]
Perl » de.comp.lang.perl.misc » zeichenkette gruppieren

Vorheriges Thema: grid Geometry manager + Ausrichtung der Widgets
Nächstes Thema: F: callback Funktion