Norbert Kölln: Tausenderpunkte einfügen

Beitrag lesen

Hallo Thomas!

Ich hatte nicht daran gedacht, daß Du vielleicht nicht nur ganze Zahlen bearbeiten willst (wie dies bei meiner Anwendung der Fall war). Eine Änderung ist also notwendig, aber Frank hat Recht: Deine Änderung führt zu Fehlern.

Ich bin nicht mal eben auf eine Lösung mit einem einfachen regulären Ausdruck gekommen, deshalb hier eine weniger elegante:

$wert="19876,5432";
&tausenderpunkte($wert);
print "$wert\n";

sub tausenderpunkte
{
  my @teilwert = split(/,/,$_[0]);
  $teilwert[0] =~ s/(\d{1,3})(?=(\d{3})+($))/$1./g;
  $_[0]=$teilwert[0];
  if ($teilwert[1]) { $_[0].=",$teilwert[1]" };
}

Norbert