IsDate


Definition: Returns a Boolean value indicating whether an expression can be converted to a date.

 

Windows PowerShell makes it easy to format and manipulate date and time values … provided, of course, that you actually havedate and time values. To verify that a value truly isa date-time value all you have to do is use the –isoperator and check to see if the data type is datetime. For example, these two lines of code assign a value to the variable $ a andthen determine whether or not $a is a date-time value:

 

$a = 11/2/2006
$a -is [ datetime]

 

When you run this command you should get the following:

 

False

 

Why is this False; why isn’t 11/2/2006 a valid date? That’s easy: to assign a date to a variable you need to enclose that date in double quote marks and specify the [ datetime] variable type:

 

$a = [ datetime] "11/2/2006"

 

Without the double quote marks Windows PowerShell believes that this is a mathematical expression: 11 divided by 2 divided by 2006. In fact, if you check the value of $ a you’ll get back this:

 

0.00274177467597208

 

With the quotes but without the [ datetime] specified,Windows PowerShell thinks this is a string and still returns False.