Powershell通配符模式问题



我得到错误指定的通配符字符模式无效:

示例如下:

$trimItem = "What is your house and land budget?"
$title = "(Select)</p> <p>What is your house and land budget? </p> <p>Minimum :  [MinBudget][MaxBudget"
if ($trimItem -clike "*$($title)*") {
write-host true
}
else {
write-host false
}

我该如何纠正这个问题?

如有任何建议,不胜感激。

Thanks in advance

由于缺少关闭],您将获得WildcardPatternException,请注意[]是特殊的通配符。如果您想要匹配这些字符字面上,它们需要转义,在PowerShell中,转义字符是反划`:

[WildcardPattern]::Escape('[ ]') # Returns => `[ `]

然而,退一步看,似乎你的条件顺序是不正确的,很可能你想要反转变量的顺序进行比较:

$title -clike "*$trimItem*" # Returns => True

最新更新