-Pattern 參數
-SimpleMatch 參數
-CaseSensitive 參數
取得字串陣列
PS R:\> $arrFullName = (dir *.jpg).FullName
PS R:\> $arrFullName
R:\1.jpg
R:\2.jpg
R:\3.jpg
R:\4.jpg
R:\5.jpg
PS R:\>
-Pattern 參數
一個關鍵字
PS R:\> $arrFullName | Select-String -Pattern '2\.jpg'
R:\2.jpg
PS R:\>
二個關鍵字
PS R:\> $arrFullName | Select-String -Pattern '2\.jpg','3\.jpg'
R:\2.jpg
R:\3.jpg
PS R:\>
另一種寫法
PS R:\> $p = '2\.jpg','3\.jpg'
PS R:\> $arrFullName | Select-String -Pattern $p
R:\2.jpg
R:\3.jpg
PS R:\>
使用 Regex的 | 符號
PS R:\> $arrFullName | Select-String -Pattern '2\.jpg|3\.jpg'
R:\2.jpg
R:\3.jpg
PS R:\>
-SimpleMatch 參數
Pattern參數值:預設是Regex
PS R:\> $arrFullName | Select-String -Pattern '2\.jpg'
R:\2.jpg
PS R:\>
使用 SimpleMatch參數
符號沒有特殊意義,照著字面上的字去尋找
PS R:\> $arrFullName | Select-String -Pattern '2.jpg' -SimpleMatch
R:\2.jpg
PS R:\>
-CaseSensitive 參數
預設:不區分大小寫
PS R:\> $arrFullName | Select-String -Pattern '2\.jpg'
R:\2.jpg
PS R:\> $arrFullName | Select-String -Pattern '2\.JPG'
R:\2.jpg
PS R:\>
-CaseSensitive 參數:區分大小寫
結果:沒反應
PS R:\> $arrFullName | Select-String -Pattern '2\.JPG' -CaseSensitive
PS R:\>
在Regex裡面設定「不區分大小寫」
PS R:\> $arrFullName | Select-String -Pattern '(?i)2\.JPG'
R:\2.jpg
PS R:\> $arrFullName | Select-String -Pattern '(?i)2\.JPG' -CaseSensitive
R:\2.jpg
PS R:\>
沒有留言:
張貼留言