最好玩儿的补字符方法,以VB为例

来源:互联网 发布:淘宝代理数据包下载 编辑:程序博客网 时间:2024/04/18 21:29

我们通常所用的补法是:循环补足

 

例如:

要将一个字符补足10位,前面用0填充,我们通常所用的方法是:

for i = 1 to 10-len(string)

    string="0" & string

next

后补同样

 

前天有个小弟问我一个变态的补足位,每个字符串要补足100万位 他循环一下就疯掉了,他是用VB的,于是我给他写了个函数

代码很简单,只是这个方法很少有人想到,想想写程序时想想方法真是挺好玩的事情

 


'########################################
'# 字符补位函数
'#参数说明:AddLocation     0为前补   1为后补
'#参数说明:SourceString    源字符串
'#参数说明:TargetCharacter 补位字符
'#参数说明:MaxLen          目标长度
'########################################
'# 20:18 2009-9-1
'########################################

Function CharAdd(AddLocation,SourceString,TargetCharacter,MaxLen)
            Select case trim(AddLocation)
                case "0"
                    Target=Replace(Space(MaxLen)," ",TargetCharacter) & SourceString
                    CharAdd=Right(Target,MaxLen)
                case "1"
                    Target=SourceString & Replace(Space(MaxLen)," ",TargetCharacter)
                    CharAdd=Left(Target,MaxLen)
                case else
                    Target=SourceString & Replace(Space(MaxLen)," ",TargetCharacter)
                    CharAdd=Left(Target,MaxLen)
            End select
End Function

 

 

这段东西的精华就在于space replace left right函数的应用