Powershell选择字符串找不到我想要的



我正在尝试解析文件路径以获取文件名,并且我有一个正则表达式。*\

我将使用以下

Select-String -Pattern '.*\' -InputObject $test -NotMatch

在C:\Users\User\Desktop\test.exe这样的文件路径上,它返回空白。如果我删除-NotMatch标志,它将返回整个路径。我尝试使用正则表达式测试仪,这样我就知道正则表达式是正确的。我做错了什么?

不要使用Select-String,而是使用Split-Path -leaf

看起来-notmatch只是在匹配的情况下忽略整行。这个怎么样?这是行末尾不是反斜杠的任意数量的字符。

'C:UsersUserDesktoptest.exe' | select-string [^\]*$ | % matches | % value
test.exe

相关内容

  • 没有找到相关文章

最新更新