Hop til indhold
Stavox

PShit - MoneyFormat


Trixx

Recommended Posts

    function string moneyFormat(M:number){
        
        local Q = M < 1000000 # No need to do math?
        local P = Q ? "^(-?%d+)(%d%d%d)" : "^(-?%d+)(%d%d%d)(%d%d%d)"
        local N = Q ? "%1,%2" : "%1,%2,%3"
         
        return M:toString():replaceRE(P, N) #Regular Expressions // Yaay

    }

p money format like yes yes

1000000 -> 1,000,000

10000 -> 10,000

1000 -> 1,000

 

Trixx er en retard

Link til kommentar
Del på andre sites

  • 1 month later...

Ville det her ikke give dig lidt mere korrekte tal når du kommer højere op?

 

   function string moneyFormat(M:number){
        return M:toString(10):reverse():replaceRE("(%d%d%d)", "%1,"):reverse()
   }

Når du kommer for højt op begynder dine tal at blive skrevet på dumcomputermode21 altså e+15 = 1 * 10^15, så det må du selv fikse*

Link til kommentar
Del på andre sites

På 16/10/2018 den 6:54 PM , Jan T skrev:

Ville det her ikke give dig lidt mere korrekte tal når du kommer højere op?

 


   function string moneyFormat(M:number){
        return M:toString(10):reverse():replaceRE("(%d%d%d)", "%1,"):reverse()
   }

Når du kommer for højt op begynder dine tal at blive skrevet på dumcomputermode21 altså e+15 = 1 * 10^15, så det må du selv fikse*

Hvorfor skal altid være smartere end mig? 🙂

Link til kommentar
Del på andre sites

5 timer siden, Dynn skrev:

I er alle sammen forkerte på den.

 

function string moneyFormat(N)
{
    local Formatted = N+""
    local Last = ""

    while (1) {
        Formatted = Formatted:replaceRE("^(-?%d+)(%d%d%d)", "%1,%2")
        if(Formatted==Last){break}
        Last=Formatted
    }
    return Formatted
}

Bedre?

https://github.com/Facepunch/garrysmod/blob/master/garrysmod/lua/includes/extensions/string.lua#L347 suush..

Link til kommentar
Del på andre sites

  • 5 months later...
  • 1 month later...
På 16/10/2018 den 6:54 PM , Jan T skrev:

Ville det her ikke give dig lidt mere korrekte tal når du kommer højere op?

 


   function string moneyFormat(M:number){
        return M:toString(10):reverse():replaceRE("(%d%d%d)", "%1,"):reverse()
   }

Når du kommer for højt op begynder dine tal at blive skrevet på dumcomputermode21 altså e+15 = 1 * 10^15, så det må du selv fikse*

Please fix. Den siger ",100" hvis et tal er under 1000

Link til kommentar
Del på andre sites

Arkiveret

Dette emne er nu arkiveret og er lukket for yderligere svar

Gæst
Dette emne er nu lukket for yderligere svar
×
×
  • Tilføj...

COOKIE- OG PRIVATLIVSPOLITIK PÅ STAVOX.DK

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Privatlivspolitik - Vilkår for brug.