阅读此http://www.computerperformance.co.uk/powershell/powershell_conditional_operators.htm后,我尝试应用推荐使用的通配符,但完全失败了:
PS C:\Workspace> $a = "ABC_1608.txt"
PS C:\Workspace> $a -Match "ABC_????.txt"
Bad argument to operator '-match': parsing "ABC_????.txt" - Nested quantifier ?..
At line:1 char:10
+ $a -Match <<<< "ABC_????.txt"
+ CategoryInfo : InvalidOperation: (:) [], RuntimeException
+ FullyQualifiedErrorId : BadOperatorArgument
但这种健全性检查有效:
PS C:\Workspace> $a = "abc"
PS C:\Workspace> $a -Match "a?c"
True
然后我绑定了正则表达式并且它有效但我不想使用正则表达式,这是因为我不打算进行辩论:
PS C:\Workspace> $a = "ABC_1608.txt"
PS C:\Workspace> $a -Match "ABC_\d{4}\.txt"
True
我在第一个例子中没有正确使用通配符吗?