Lpad在vbscript中为零

时间:2013-08-09 16:53:14

标签: vbscript

我正在尝试用左边的0填充一个字符串。输出字符串的长度应为7。 这是我的代码:

inputstr = "38"
in = string(7 - Len(inputStr),0) & inputStr
msgbox in

我收到错误预期声明 请帮我 谢谢

4 个答案:

答案 0 :(得分:16)

以下代码的运行速度提高5%:

inputStr = "38"
result = Right("0000000" & inputStr, 7)

msgbox result

答案 1 :(得分:15)

此函数将使用给定的填充字符将输入值左键填充到给定的字符数,而不截断输入值:

Function LPad(s, l, c)
  Dim n : n = 0
  If l > Len(s) Then n = l - Len(s)
  LPad = String(n, c) & s
End Function

输出:

>>> WScript.Echo LPad(12345, 7, "0")
0012345
>>> WScript.Echo LPad(12345, 3, "0")
12345

答案 2 :(得分:6)

in是保留字,因此不能用作变量名,您必须传递字符串"0"而不是整数0,所以:

inputStr = "38"
result = string(7 - Len(inputStr), "0") & inputStr

msgbox result

答案 3 :(得分:1)

功能:

Private Function LPad (str, pad, length)
    LPad = String(length - Len(str), pad) & str
End Function

使用:

LPad(12345, "0", 7)