I found some strange behavior in PowerShell, and can't figure out why it behaves this way. Out of the three following lines of code, why is it that only -match returns what I want, and the other two commands return nothing?
Get-Service | ?{$_.Name -like "sql"}
Get-Service | ?{$_.Name.Contains("sql")}
Get-Service | ?{$_.Name -match "sql"} # This one works?