[英]Powershell Search String in File Containing $
我想在文本文件中搜索以下字符串: $$u$$
我嘗試了select-string
, get-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.