Michael Schröpl: Normalisieren von Gleitpunktzahlen (Stilfrage)

Beitrag lesen

Hallo Leute,

ich möchte gerne in Perl Gleitpunktzahlen normalisieren:
a) rechtsstehende Nullen aus dem Nachkomma-Anzeil abtrennen und
b) einen danach überflüssigen Dezimalpunkt ebenfalls entfernen.

Mein Lösungsversuch

# Gleitpunkt-Darstellung normalisieren
  # (rechtsstehende Nachkomma-Nullen entfernen)
    if ($zahl =~ /^(\d+).(\d*?)0+$/)
       {
         my ($vorkomma, $nachkomma) = ($1, $2);
         if ($nachkomma) { $vorkomma .= '.'; }
         $zahl = $vorkomma . $nachkomma;
       }

scheint zwar zu funktionieren, kommt mir aber nicht arg 'perlish' vor.
Geht das nicht irgendwie noch deutlich eleganter?

Ach ja, das Ganze läuft als eine von vielen Teilfunktionen über eine
Datei mit 757 MB, und das Ganze ist Bestandteil eines täglich laufenden
Produktionsjobs - eine performante Lösung wäre mir also nicht unlieb. ;-)

Viele Grüße
      Michael