Wie füge ich "tausender"-Punkte in eine Zahl ein?
Inhalt:
Immer wieder taucht die Frage auf, wie man eine Zahl so formatiert, dass sie "Tausender"-Punkte enthält... Ich habe hier einige Vorschläge aus dem Forum gesammelt (sind also nicht meine Ideen

) siehe:
http://board.perl-community.de/cgi-bin/ikonboard/ikonboard.cgi?act=ST;f=6;t=1749
Möglichkeit 1
#! /usr/bin/perl
use strict;
use warnings;
my $zahl = 12345678;
1 while $zahl =~ s/(\d+)(\d{3})/$1.$2/;
print $zahl;
Möglichkeit 2
#! /usr/bin/perl
use strict;
use warnings;
my $zahl = 12345678;
$zahl =~ s/(^[-+]?\d+?(?=(?>(?:\d{3})+)(?!\d))|\G\d{3}(?=\d))/$1./g;
print $zahl;
Möglichkeit 3
#! /usr/bin/perl
use strict;
use warnings;
my $zahl = taupu(12345678);
print $zahl;
sub taupu ($) {
#--------------------------------------------------------------------------
# sub : t a u p u
#--------------------------------------------------------------------------
# Autor : CD
# Aufgabe : Zahlen mit Tausendertrenner (".") ausgeben und Komma als
# Dezimaltrenner verwenden.
# (Kopiert aus dem Perl-Cook-Book und angepasst.)
# Parameter : Auszugebende Zahl
# Rückgabewert : Zahl mit Punkten
#--------------------------------------------------------------------------
# 0.0.1 - 10.12.2002 - CD - Erstellt
#--------------------------------------------------------------------------
my $text = reverse $_[0];
$text =~ s:\.:,:g; # deutsches Komma als Dezimaltrenner
$text =~ s/(\d\d\d)(?=\d)(?!\d*,)/$1./g;
return scalar reverse $text;
} # sub taupu
Ergänzungen, Kommentare
Kommentare werden am besten in folgender Form vorgenommen, damit sie im Inhaltsverzeichnis angezeigt werden (natürlich ohne das <verbatim>):
---+++ Main.??? - 14 Jul 2003 - Betreff