PowerShell正则表达式替换产生空输出

时间:2018-02-13 12:25:11

标签: regex string powershell replace

我正在尝试匹配以下字符串并将其替换为第一个捕获goup:PCUNIT020 \ Username; 我只需要用户名部分。我使用以下正则表达式:

 $name="PCUNIT020\Username";
 $regex="^\w+\\(.*)";
 $newname=$name -replace $regex, $1;
 $newname;

shell不输出任何内容。

1 个答案:

答案 0 :(得分:3)

您的错误是您必须将$1放在引号中:'$1'。否则,它只是用变量$1的值替换所有内容,而变量$name -replace '^\w+\\' 的值没有设置。

但是,不要用第一个捕获组替换它,而是直接替换所有内容,直到并包含反斜杠:

onPause