Leser: 1
|< 1 2 >| | 19 Einträge, 2 Seiten |
1 while $zahl =~ s/(\d+)(\d{3})/$1.$2/;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
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
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
use warnings;
use strict;
my @numb3rs = qw/1024 16777215 3,1415926 42 759092417205229390873,8763617/;
for my $num ( @numb3rs ) {
print "number: $num\n";
my $regexed = $num;
$regexed =~ s/(^[-+]?\d+?(?=(?>(?:\d{3})+)(?!\d))|\G\d{3}(?=\d))/$1./g;
print "perlfaq: $regexed\n";
$regexed = $num;
$regexed =~ s/(\d+)(\d{3})/$1.$2/;
print "strat: $regexed\n";
$regexed = $num;
$regexed =~ s/(\d\d\d)(?=\d)(?!\d*,)/$1./g;
print "crian: $regexed\n";
} continue {
print '=' x 75, "\n"
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
peters@ronin:~> perl test.pl
Possible attempt to separate words with commas at test.pl line 4.
number: 1024
perlfaq: 1.024
strat: 1.024
crian: 102.4
===========================================================================
number: 16777215
perlfaq: 16.777.215
strat: 16777.215
crian: 167.772.15
===========================================================================
number: 3,1415926
perlfaq: 3,1415926
strat: 3,1415.926
crian: 3,141.592.6
===========================================================================
number: 42
perlfaq: 42
strat: 42
crian: 42
===========================================================================
number: 759092417205229390873,8763617
perlfaq: 759.092.417.205.229.390.873,8763617
strat: 759092417205229390.873,8763617
crian: 759092417205229390873,876.361.7
===========================================================================
|< 1 2 >| | 19 Einträge, 2 Seiten |