正则表达式使用powershell删除"\"前面的内容

Pow*_*ell 4 regex powershell

想得到一个帮助,想要一个正则表达式来消除"\"以及之前发生的事情,

Input should be "vmvalidate\administrator" 
and the output should be just "administrator"
Run Code Online (Sandbox Code Playgroud)

Tim*_*ker 12

$result = $subject -creplace '^[^\\]*\\', ''
Run Code Online (Sandbox Code Playgroud)

删除字符串开头的所有非反斜杠字符,后跟反斜杠:

说明:

^      # Start of string
[^\\]* # Match zero or more non-backslash characters
\\     # Match a backslash
Run Code Online (Sandbox Code Playgroud)

这意味着如果字符串中有多个反斜杠,则只会删除第一个(以及导致它的文本).如果要在最后一个 反斜杠之前删除所有内容,请使用

$result = $subject -creplace '(?s)^.*\\', ''
Run Code Online (Sandbox Code Playgroud)


Sha*_*evy 8

无需使用正则表达式,请尝试拆分方法:

$string.Split('\')[-1]
Run Code Online (Sandbox Code Playgroud)