簡體   English   中英

包含$的文件中的Powershell搜索字符串

[英]Powershell Search String in File Containing $

我想在文本文件中搜索以下字符串: $$u$$

我嘗試了select-stringget-content.Contains 在我看來這是不可能的。

我使用它作為變量進行搜索: $ToSearch = "'$'$u'$'$"

它總是給出錯誤的結果。

這是因為大多數搜索過濾器都依賴於正則表達式。 正則表達式中的$符號需要轉義

在不了解更多您要完成的工作的情況下,我無法舉太多例子,但這是一個例子:

'this is a $$u$$ test' -replace "\$",""

'\\'是轉義字符的含義-意味着按字面意義進行翻譯。

編輯:每個評論

$Val = 'this is a $$u$$ test'
$Val | Select-String "\$+\w\$+" -quiet

-安靜的開關返回t / f而不是字符串值。

$是正則表達式中的保留字符,這會使您的搜索復雜化。

Select-String的默認搜索模式類型是regex,但是您也可以指定-Simplematch-Wildcard ,這兩種類型都將消除對$進行轉義的需要。 如果使用-Wildcard,則需要在比賽的任一行末添加通配符*- '*$$u$$*' 對於simplematch,只需使用要匹配的字符串- '$$u$$'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM