我有数百个文件,其名称如下:
foo.13.01.02.place.title.of.take.mp4
foo.13.04.23.office.other.title.altogether.mp4
foo.13.12.30.street.yet.another.title.mp4
“foo”将是制作公司(总是相同的),日期跟随(yy/mm/dd)
,然后是拍摄地点,最后是拍摄的拍摄标题。
我现在想要将所有这些文件重命名为
格式 place - title (foo - date)
我发现正则表达式对此非常有用,我找到了一个名为“BULK RENAME UTILITY”的程序(www.bulkrenameutility.co.uk),它支持使用RegEx重命名文件。
它有两个字段,一个名为“匹配”,您可以在其中输入正则表达式模式以将文件名分成四个部分。
另一个名为“replace”的字段,您可以输入\3 - \4 (\1 - \2.mp4)
之类的内容,将文件名重新组合在一起。
我做了一些快速的研究,但正则表达式仍然主要是希腊语,所以我希望有人可以帮助我将正则表达式放在一起,将上面的文件名分解为四个部分(foo,日期,地点,标题)并允许我根据需要重新排列它们。
我希望从中学习,以便下次我可以自己做!
答案 0 :(得分:1)
如果地方和公司都不包含.
,这应该有效:
^([^.]+)\.(\d{2}\.\d{2}\.\d{2})\.([^.]+)(.*)\.([^.]+)$
^
将正则表达式锚定到字符串的开头(并且最后的$
将其锚定到结尾)。
([^.]+)
部分是非.
字符组(公司和地点以及扩展名)。
(\d{2}\.\d{2}\.\d{2})
捕获日期:数字重复两次,后跟一段时间等等。
(.*)
将捕获其余部分(标题)。