Struppi: RegEx-Problem

Beitrag lesen

$text =~ tr/ab/xy/;
Also a durch x und alle b durch y ersetzen, ob er das wirklich will?

Ich hatte es schon mitgelesen, aber aus seiner Fragestellung läßt sich genau das schließen.

Hier mein Beispiel (die Zahlen könnten beliebige Zeichen sein):
<code>
$text = "111ab222ab333ab444";
while ($text =~ /(.*?)ab([^ab]*)/)
    {
    $text2 .= $1.'xy'.$2;
    }
</code>
$text2 sollte dann so aussehen: "111xy222xy333xy444". Es dürfen also keine Zeichen verloren gehen, auch die am Schluss nicht. :)

#!/usr/bin/perl -w
use strict;
my $text = "111ab222ab333ab444";
my $text2 = $text;
$text2 =~ tr/ab/xy/;
print "$text\n$text2";

führt absolut zu dem von ihm gewünschten Ergebnis.

Struppi.