Obwohl ich die Prozedur für den Eigenbedarf erstellt habe, will ich sie euch nicht vorenthalten.
Diese Prozedur fügt frei wählbare Tausendertrennzeichen in Zahlen ein, die dann logischer als String ausgegeben wwerden müssen.
Aus 123456789 wird dann z. B. 123.456.789. Mann kann das Trennzeichen auch frei wählen und für das englische Format z. B. Kommas nehmen.
Code: Alles auswählen
Procedure.s tausendertrennzeichen(zahl.q, separator.s=".")
Protected zahl$=StrQ(zahl), start.l=Len(zahl$)%3, res.s=PeekS(@zahl$, start), n.l
For n=start To Len(zahl$)-start-1 Step 3
res+separator+PeekS(@zahl$+n, 3)
Next
ProcedureReturn LTrim(RemoveString(" "+res, " "+separator))
EndProcedure
Debug tausendertrennzeichen(1)
Debug tausendertrennzeichen(12)
Debug tausendertrennzeichen(123)
Debug tausendertrennzeichen(1234, ",")
Debug tausendertrennzeichen(12344567890)
- Benötigt PB 4.0 oder höher. Edit: Prozedur verbessert.
Für Eine Procedure, die ASCII und Unicode unterstützt, siehe Seite 6!!
Falls jemand eine effizientere Prozedur posten möchte, kann er dies gern tun, ich würde mich freuen. Das soll dann anregen, die beste Leistung aus PB herauszuholen, wie beim byterechner() -Wettkampf.
