Format String
Publié : jeu. 29/oct./2009 14:11
Dans le cadre d'un developpement j'ai du créer un fonction format de chaine, je la partage avec vous ça peut servir !
Et peut être que certain d'entre vous auront des idées pour l'optimiser voir l'améliorer !
Et peut être que certain d'entre vous auront des idées pour l'optimiser voir l'améliorer !
Code : Tout sélectionner
Procedure.s StrFormat(txt.s,mask.s,ForceMask.b=#False)
Result.s=""
Quit=#False
lt.b=Len(txt)+1
lm.b=Len(mask)+1
Repeat
c.s=Mid(mask,lm,1)
If c="#" And lt>0
Result=Mid(txt,lt,1)+Result
lt=lt-1
lm=lm-1
ElseIf c<>"" And lm>0
Result=c+Result
lm=lm-1
Else
lt=lt-1
lm=lm-1
EndIf
Until (ForceMask=#False And lt<1) Or (ForceMask=#True And lm<1 And lt<1)
ProcedureReturn Result
EndProcedure
Debug StrFormat("1250","###,###")
Debug StrFormat("8080000","### ### ### ###")
Debug StrFormat("26122009","##-##-####")
Debug StrFormat(RSet(Str(1250333), 9, "0"),"$### ### ###",#True)