6

我循环遍历data可能具有整数数值的字符串变量,例如"123". 如果这个字符串变量有数值,我想指出它并考虑使用这样的:

If IsNumeric(CInt(data)) Then 
    WScript.Echo "Number"
Else
    WScript.Echo "String"
End If

CInt()每次data变量无法转换为整数时都会引发错误:

Type mismatch: 'CInt'

如何指示字符串在 vbscript 中是否具有整数值?

4

2 回答 2

11

VB脚本的IsNumeric函数可以用来判断一个表达式是否可以计算为一个数字。它根据表达式返回布尔值

请注意,如果表达式是日期表达式,则 IsNumeric 返回 False。

现在,在您的代码中,您误认为即使它不是数字,您也试图将其转换为整数

你可以像这样在你的代码中使用它——

If IsNumeric(data) Then       
   WScript.Echo "Number"
Else
   WScript.Echo "String"
End If
于 2012-07-12T11:21:38.080 回答
1

仅适用于整数:

If VarType(data) = vbInteger Then
    WScript.Echo "Integer"
Else
    WScript.Echo "Something else"
End If

对于数字:

If IsNumeric(data)
    WScript.Echo "Number"
Else
    WScript.Echo "string"
End If
于 2012-07-12T11:13:18.937 回答