0

我有数百个名称如下的文件:

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、日期、地点、标题)并允许我根据需要重新排列它们。

我希望从中吸取教训,以便下次我可以自己做!

4

1 回答 1

1

如果这个地方和公司都不会包含 a .,这应该有效:

^([^.]+)\.(\d{2}\.\d{2}\.\d{2})\.([^.]+)(.*)\.([^.]+)$

^正则表达式锚定到字符串的开头($最后将其锚定到末尾)。

这些([^.]+)部分是一组非.字符(公司和地点,以及分机)。

(\d{2}\.\d{2}\.\d{2})捕获日期:数字重复两次,然后是句点等。

(.*)捕获到最后一个时期(标题)的其余部分。

于 2013-08-21T16:12:22.620 回答