2017-07-19 60 views
0

所以我试图组织和清理我如何下载音乐。其中一种方法是使用插件将视频转换为MP3,但这通常会在文件名中留下水印,我想通过PowerShell脚本将其删除。删除子字符串与文件名中的正则表达式字符

所以我基本上会有这个“艺术家 - SONGNAME [watermark.com] .MP3”

我看着它,并尝试一下就删除,由于他们是正则表达式的支架和我有过这个迄今所做:

$removeMe = "[watermark.com]" 
$list = Get-ChildItem *.mp3 | -replace '[[\]]','' 

这是我到目前为止我迷路之前,它消除了支架,像这样

Artist - Songnamewatermark.com.mp3 

所以,我想同样用

-replace 'watermark.com' yet it brings back the brackets. 

Artist - Songname[watermark.com].mp3 

我有点挣扎在这里,正则表达式是不是我的专长,任何帮助,将不胜感激。

+0

针对此正则表达式是非常简单的,但我无法弄清楚你想要做什么。 – sln

+0

我下载的文件名不是“artist - songname [watermark.com] .mp3”,而是运行这个powershell脚本以从文件名中删除子串'[watermark.com]'。所以剩下的就是“artist songname.mp3” – James

+0

'\ [[^ \ [\]] + \]'应该这样做。 – sln

回答

0

可以使用代码:

-replace '\[[A-Za-z.]+\]','' 
+0

这工作,谢谢。 – James