Regex Powershell子串替换

Regex Powershell子串替换,regex,string,powershell,substring,Regex,String,Powershell,Substring,乡亲们 我无法在PowerShell中替换下面的字符串,最初我怀疑它是由于regexp引起的,并使用[regex]::Escape()将\解析为双斜杠,但它仍然不起作用。你能推荐一下吗 PS C:\User>"C:clog" -replace "C:c" , "" PS C:\User>log PS C:\User>"C:\\c\\log" -replace "C:\\c\\", "" PS C:\User>C:\\c\\log 使用拆分路径,它是为此而设计的: Spl

乡亲们

我无法在PowerShell中替换下面的字符串,最初我怀疑它是由于regexp引起的,并使用
[regex]::Escape()
\
解析为双斜杠,但它仍然不起作用。你能推荐一下吗

PS C:\User>"C:clog" -replace "C:c" , ""
PS C:\User>log
PS C:\User>"C:\\c\\log" -replace "C:\\c\\", ""
PS C:\User>C:\\c\\log

使用
拆分路径
,它是为此而设计的:

Split-Path "C:\\c\\log" -Leaf

# returns "log"

您在输入字符串中定义了2个反斜杠,因此在模式中需要4个:
“C:\\C\\log”-替换“C:\\\\C\\\”,“
Wiktor如果您是对的,我现在通过输入字符串上的另一个[regex]::Escape()实现了这一点。请回复。不,这不仅仅是关于提取日志,我有类似C:\\C\\log\\loggin\\LOGO的东西。如果regexp更适合您的情况,那么您可以使用它。