如何解决Powershell转义字符嵌套量词
我在使用转义字符和使用“+”字符时遇到了困难。
我不断收到关于嵌套量词“+”的错误
$software= "Notepad++ 7.8.5 (x64)"
if($software-contains "++")
{
$software.Replace("++","\`'+""\`+'")
}
Get-Content "C:\path\software.log" | Select-String $software
我怎样才能消除这个错误? 感谢您抽出宝贵时间。
解决方法
如果您正在寻找字符串逐字,您可以使用Select-String
的-SimpleMatch
开关绕过转义的需要:
Get-Content C:\path\software.log | Select-String $software -SimpleMatch
如果您确实需要 regex 匹配,请使用 [regex]::Escape()
来转义(可能是 一部分)您的模式,以便让正则表达式引擎逐字处理:
Get-Content C:\path\software.log | Select-String ([regex]::Escape($software))
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。