2

Я хочу удалить все дублированные файлы.

Когда файл дублируется, он пишет так:

  1. name.doc
  2. имя (2).doc
  3. имя (3).doc

... и я должен сохранить только файл с именем name.doc. Другие файлы должны быть удалены.

Каково обычное выражение для поиска всех файлов с (номером), например, именем (2).doc?

Между именем файла и обозначением (число) присутствует пробел.

Спасибо за вашу помощь, потому что я не могу найти хорошее регулярное выражение.

До скорой встречи.

1 ответ1

0

Есть гораздо лучшие способы, чем использовать регулярные выражения для поиска дубликатов файлов, но ответить на ваш вопрос:

/.*\ \(\d*\)\.[A-za-z]*/g

Что это соответствует:

.         any character except newline
*         any number of the previous character
\ \(\d*\) first a space, then a (, then any digit, then a )
\.        dot
[A-za-z]* any number of letters (for the extension)

Вы можете проверить вещи здесь.

Хороший способ тестирования - использовать CMD для создания текстового файла со всеми именами файлов в папке, а затем вставлять их на упомянутый мной сайт. Вы можете сделать это, открыв CMD, перейдя в папку с большим количеством копий (используя имя папки cd для навигации), затем набрав dir > filenames.txt .

В папке вы найдете файл с именем filenames.txt , из которого вы можете скопировать все имена файлов на regexr.com, чтобы вы могли увидеть, какие файлы будут сопоставлены с предоставленным мной регулярным выражением.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .