Страница 1 из 2

Поиск в заданном диапазоне

Добавлено: Ср июл 15, 2020 12:09
kirimbay
Всем привет, у меня нестандартная задачка. Опишу как есть целиком, чтобы был ясен смысл задачи.
Я занимаюсь предметной съемкой, снял 10 предметов в 10 ракурсах итого 100 фото. Изначально фото было 150, но 50 файлов были отбракованы и осталось 100, т.е. порядок файлов был нарушен.

Теперь мы имеем имена файлов:
DSC00002.jpg
DSC00003.jpg
DSC00005.jpg
DSC00008.jpg
DSC00010.jpg
DSC00013.jpg
DSC00015.jpg
DSC00017.jpg
DSC00019.jpg

При съемке, на бумажку напротив артикула изделия я записывал диапозон цифр который показывал мне фотоаппарат, но выше я указал что часть этих файлов отбракованы и удалены.

Итогом надо сделать так. Из заданого диапозона например 5-10 (что соответствует DSC00005-DSC00010) выбрать файлы это будет DSC00005, DSC00008, DSC00010 и переименовать их в Арт.3595-01, Арт.3595-02, Арт.3595-03

Перечитал 5 раз, вроде все понятно объяснил. Может кто предложит какое решение? Готов даже сделать небольшое финансовое вознаграждение, если предложенное решение будет работать.

Могу выслать на почту или дать ссылки если кто-то сможет помочь в решении.

Добавлено: Ср июл 15, 2020 12:33
Flasher
1. Выделить эти файлы.
2. Ctrl+M
3. Вставить маску: Арт.3595-[C1:2]
4. Enter, Esc.

Добавлено: Ср июл 15, 2020 13:14
kirimbay
Flasher писал(а):1. Выделить эти файлы.
2. Ctrl+M
3. Вставить маску: Арт.3595-[C1:2]
4. Enter, Esc.
Ну групповое переименование знает любая домохозяйка, задача несколько сложнее.

Добавлено спустя 5 минут:

тогда упростим задачу.

Как сделать поиск в заданном диапозоне? Например таком, ввести в поле поиска 1-10 (с какими-то служебными символами), а в результате тк нашел и вывел на панель мне файлы

DSC00002.jpg
DSC00003.jpg
DSC00005.jpg
DSC00008.jpg
DSC00010.jpg

Добавлено: Ср июл 15, 2020 13:33
Flasher
Вместо п. 1 та же порция для домохозяек:
1. Num+
2. <DSC000(0[2-9]|10).jpg
3. Enter

Добавлено: Ср июл 15, 2020 13:44
kirimbay
Flasher писал(а):Вместо п. 1 та же порция для домохозяек:
1. Num+
2. <DSC000(0[2-9]|10).jpg
3. Enter
Шикарно!!! С меня 300р на пиво, куда закинуть? И можете дать некоторые разъяснения? Зачем в квадратных скобках 2-9
или просто пояснить
зачем круглые скобки за что они отвечают?
за что отвечают квадратные?

Добавлено: Ср июл 15, 2020 13:53
Flasher
Регулярные выражения

P.S.: Посты цитировать не надо, в этом нет смысла.

Добавлено: Ср июл 15, 2020 13:57
kirimbay
я поплыл, а что надо записать чтобы найти это?
DSC00013.jpg
DSC00015.jpg
DSC00017.jpg
DSC00019.jpg

Добавлено: Ср июл 15, 2020 14:01
Flasher
<DSC0001[3-9].jpg
<DSC0001[3579].jpg

Добавлено: Ср июл 15, 2020 14:16
kirimbay
Ничего не понимаю, а если такой диапозон и надо найти от 9105 до 9916
DSC09098.jpg
DSC09102.jpg
DSC09106.jpg
DSC09115.jpg
DSC09118.jpg
DSC09129.jpg
DSC09135.jpg

Добавлено спустя 15 минут:

Что делать с большими диапозонами как их записать от 50 до 1300 например?

Добавлено: Ср июл 15, 2020 14:21
Flasher
И не поймёте, пока не освоите регекспы.
<DSC09(1(0[5-9]|[1-9]\d)|[2-9][01][0-6])\.jpg

Добавлено: Ср июл 15, 2020 14:30
kirimbay
Так о том и речь, что при таких записях мне проще руками эти диапозоны выделять и переименовывать.
По-хорошему надо просто куда-то вписать численное значение например 50-1300 и чтобы диапозон от dsc00050 до dsc001300 весь выделился. А при такой сложной записи, ну правда, проще руками.

Добавлено спустя 4 минуты:
Flasher писал(а):И не поймёте, пока не освоите регекспы.
<DSC09(1(0[5-9]|[1-9]\d)|[2-9][01][0-6])\.jpg
вот что выделил и пропустил половину )))
DSC09106.jpg
DSC09115.jpg
DSC09118.jpg
DSC09129.jpg
DSC09135.jpg
DSC09138.jpg
DSC09148.jpg
DSC09151.jpg
DSC09154.jpg
DSC09157.jpg
DSC09164.jpg
DSC09184.jpg
DSC09310.jpg
DSC09316.jpg
DSC09403.jpg
DSC09411.jpg
DSC09414.jpg
DSC09500.jpg
DSC09511.jpg
DSC09515.jpg
DSC09601.jpg
DSC09604.jpg
DSC09606.jpg
DSC09701.jpg
DSC09703.jpg
DSC09705.jpg
DSC09712.jpg
DSC09802.jpg
DSC09804.jpg
DSC09806.jpg
DSC09810.jpg
DSC09812.jpg
DSC09901.jpg
DSC09903.jpg
DSC09905.jpg

https://cloud.mail.ru/public/s94n/2fQjJ7ca1

Добавлено: Ср июл 15, 2020 14:55
Flasher
Считаете, что проще, переименовывайте руками.
Никакого задания диапазона при такой форме записи с передними нулями быть не может.
kirimbay писал(а):от dsc00050 до dsc001300
Может, до dsc01300 всё же?
<dsc0(00[5-9]\d|0\d{3}|1[0-2]\d{2}|1300)\.jpg
kirimbay писал(а):пропустил половину
Немного поспешил:
<DSC09(1(0[5-9]|[1-9]\d)|[2-8]\d{2}|9[01][0-6])\.jpg

Добавлено: Ср июл 15, 2020 15:17
kirimbay
т.е. вот без таких сложных функций где куча скобок прямых, квадратных, фигурных и т.д. никак не обойтись? и просто пояснить тоталу что надо 150-1300 никак не сделать? Подскажите, а может быть каким-то сторонним софтом можно это выполнить без таких сложных манипуляций?

Добавлено: Ср июл 15, 2020 23:21
kirimbay
Помогите плиз ау )))) Может есть какой-то генератор регулярок?

Добавлено спустя 48 секунд:
Flasher писал(а):Считаете, что проще, переименовывайте руками.
Никакого задания диапазона при такой форме записи с передними нулями быть не может.
kirimbay писал(а):от dsc00050 до dsc001300
Может, до dsc01300 всё же?
<dsc0(00[5-9]\d|0\d{3}|1[0-2]\d{2}|1300)\.jpg
kirimbay писал(а):пропустил половину
Немного поспешил:
<DSC09(1(0[5-9]|[1-9]\d)|[2-8]\d{2}|9[01][0-6])\.jpg
Пропустил две цифры в заданом диапозоне :(

Добавлено: Чт июл 16, 2020 05:01
Avada
kirimbay
Оверквотинг тут запрещён, вставлять полные предыдущие сообщения кнопкой "цитата" без их дальнейшего редактирования не следует. Замечание за нарушение правил форума.
А по существу вопроса — что в TC есть, то и обсуждается. Осваивайте имеющееся или, если не нравится, ищите альтернативы (уже безотносительно к TC, в других программах) где-то в другом месте.