Export (0) Print
Expand All
Expand Minimize

Converting VBScript's IsNumeric Function


Windows PowerShell


Definition: Returns a Boolean value indicating whether an expression can be evaluated as a number.

IsNumeric

OK, so this one turned out to be a bit more complicated than we anticipated; that’s because neither Windows PowerShell nor the .NET Framework include a “generic” method for testing whether or not a given value is a number. After toying with the notion of doing this using regular expressions we finally decided to use Visual Basic .NET instead. In the following set of commands we assign the value 44.5 to the variable $a, then load the Microsoft.VisualBasic assembly. With the assembly loaded we can then use the Visual Basic IsNumeric function to determine whether or not 44.5 is a number::



$a = 44.5
[reflection.assembly]::LoadWithPartialName("'Microsoft.VisualBasic")
$b = [Microsoft.VisualBasic.Information]::isnumeric($a)

As you might expect, when we run these commands and then echo back the value of $b we get the following:



True

If we change the value of $a to “44.5a” and re-run the commands we’ll get back this:



False


Return to the VBScript to Windows PowerShell home page

Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2014 Microsoft