Regex 从字符串中提取文件名

Regex 从字符串中提取文件名,regex,string,windows,powershell,Regex,String,Windows,Powershell,我有网络路径,需要获取变量的文件名,例如: $path1 = '\\192.168.10.10\bla\bla\bla\120\s$\filename.exe' $path2 = '\\srv\c$\bla\bla\120\s$\file2.exe' 那我就想 $var1 = filename.exe $var2 = filename.exe 我不太确定如何使用正则表达式来实现它,我想去掉所有内容,除了最后一个“”字符及其后面的内容 有人能帮忙吗 --编辑 好吧,我找到了一个方法,但它看起来

我有网络路径,需要获取变量的文件名,例如:

$path1 = '\\192.168.10.10\bla\bla\bla\120\s$\filename.exe'
$path2 = '\\srv\c$\bla\bla\120\s$\file2.exe'
那我就想

$var1 = filename.exe
$var2 = filename.exe
我不太确定如何使用正则表达式来实现它,我想去掉所有内容,除了最后一个“”字符及其后面的内容 有人能帮忙吗

--编辑 好吧,我找到了一个方法,但它看起来有点愚蠢:

$temp = $path1.split('\')
$var1 = $temp[$temp.lenth -1]

一定有更优雅的方式

不需要正则表达式。您可以使用:


第二个当然是
$path2
?@ShaharWeiss-有一个内置的PoSh cmdlet,它可以完全满足您的需要。请稍后查看
获取帮助拆分路径
。。。[咧嘴笑]
$var1 = [System.IO.Path]::GetFileName($path1)
$var2 = [System.IO.Path]::GetFileName($path2)