3
我有一个变量之前替换字符串中的字符,具有下列字符串值:文件扩展名
PS C:\> $sql.physicalname
I:\Data\Data1.mdf
I:\Data\Data2.ndf
I:\Data\Data3.ndf
I:\Data\Data4.ndf
I:\Data\Data5.ndf
I:\Data\Data6.ndf
I:\Data\Data7.ndf
I:\Data\Data8.ndf
I:\Data\Data9.ndf
I:\Data\log.ldf
我想是更换/修剪字符串,以便只有.MDF/.NDF/.LDF的扩展仍然存在:
.mdf
.ndf
.ndf
.ndf
.ndf
.ndf
.ndf
.ndf
.ndf
.ldf
我尝试使用-replace
参数与*
通配符,但我不能换我的头周围。
工程就像一个魅力,仍然无法弄清楚为什么你的代码工作虽然。你能详细说明一下吗? – MrPowerUser
'。'在正则表达式中基本上匹配任何字符,'*'表示0次或更多次出现。如果你想匹配'。'本身必须用反斜杠将其转义,因此'。* \'。意味着匹配从字符串开头到第一个'。'的所有字符。遇到 - '。'包括在内。下面的链接到MSDN与更多信息有关.NET正则表达式https://msdn.microsoft.com/en-us/library/hs600312(v=vs.110).aspx – DAXaholic
非常清楚,谢谢! – MrPowerUser