在 PowerShell 中,–Match、-Like 和 –Contains 有什麼區別?
阿新 • • 發佈:2022-04-19
轉自:https://www.nhooo.com/note/qa0gd1.html
首先使用三種用法進行示例:
PS C:\WINDOWS\system32> "This is a PowerShell String" -Match "PowerShell" True PS C:\WINDOWS\system32> "This is a PowerShell String" -Like "PowerShell" False PS C:\WINDOWS\system32> "This is a PowerShell String" -Contains "PowerShell" False
1、Match 表示判斷右側字串是否在左側字串中,其實是在匹配正則表示式;
2、Like 的用法與 SQL 中類似,在需要匹配的字串左右需要增加 * 來代表萬用字元,用法示例:
PS C:\WINDOWS\system32> "This is a PowerShell String" -like "*PowerShell*" True
3、Contains 是用來判斷陣列中是否包含元素,在對字串使用時,則將字串拆分為字元陣列進行判斷
用法示例:
PS C:\WINDOWS\system32> "Apple","Dog","Carrot","Cat" -contains "dog" True
唔,所以不要用錯哦~
更多比較運算子參考:https://docs.microsoft.com/zh-cn/powershell/scripting/learn/deep-dives/everything-about-if
Where-Object 參考:https://docs.microsoft.com/zh-cn/powershell/module/microsoft.powershell.core/where-object
Select-Object 參考:https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/select-object