We rise up for the things we believe in over and over again

Уже давно в своей аудиотеке я стараюсь придерживаться определенного формата имен файлов:
01 - Song-name.extension
Именно так - двухзначный номер в альбоме, пробел, тире, пробел, имя, точка, расширение. И откровенно бесит, когда попадаются треки с именами другого формата. Их приходится править. Обычно спасает Mass Rename в каком-нибудь файловом менеджере, но тут ситуация возникла несколько иного рода:
01.Song-Name.extension
Две долбаных точки. Казалось бы - элементарная замена, но она побьет и разделитель имени и расширения. Пришлось впервые на практике применить механизм Lookahead (в данном случае - Negative) из регулярок:

Вот это (?!mp3) в переводе на русский язык означает "включать в выборку то, за чем НЕ следует "mp3".

@музыка: Rasmus Faber - Lombardo

@темы: PowerShell, Scripting

Комментарии
06.10.2018 в 17:07

Около 70% композиций у меня в плеере начинаются с "01 - ". Потому что это заставки от аниме.
06.10.2018 в 17:23

Frozen flame
Lookahead

«Я знал, что рано или поздно мы перейдём и на эту дрянь» ©
06.10.2018 в 17:27

We rise up for the things we believe in over and over again
zHz00, надеюсь, рандом-воспроизведение включено? )

Tenno Seremel, а что поделать... XD
06.10.2018 в 19:24

Hikedaya, включено повторение одного трека)))
06.10.2018 в 22:48

We rise up for the things we believe in over and over again
zHz00, как я и говорил в одной из прошлых записей - психи кругом :)
07.10.2018 в 15:39

Тотальная неудачница и убийца жёстких дисков.
Hikedaya

Люблю foobar2000 за его фичу по переименованию файлов по тэгам.
07.10.2018 в 15:48

Тотальная неудачница и убийца жёстких дисков.
Можно ещё так попробовать:



Или даже так:


07.10.2018 в 15:49

Тотальная неудачница и убийца жёстких дисков.
Второй вариант прикольнее, потому как ищет первую точку с начала. В самом файле точек может быть хоть двести.
07.10.2018 в 15:51

Тотальная неудачница и убийца жёстких дисков.
Ах, да. В VBsсript'овых RegExp'ах синтаксис из ОП работает, хотя мне не попадалось документации такой записи. Интересно.
07.10.2018 в 16:18

We rise up for the things we believe in over and over again
Или даже так:
Это уже какое-то высшее колдунство, я такое пока еще не понимать :)

не попадалось документации
Тебе сюда: www.regular-expressions.info/lookaround.html
07.10.2018 в 16:54

Тотальная неудачница и убийца жёстких дисков.
Это уже какое-то высшее колдунство, я такое пока еще не понимать :)

Ничего сложного. «[\s\S]» – это все символы. Тоесть вообще все. От точки отличается тем, что точка не включает в себя переносы и что-то ещё. По карайней мере в VBsсript'овских регэкспах.

Тебе сюда:

Ну, я про конкретную библиотеку.
07.10.2018 в 18:44

We rise up for the things we believe in over and over again
Ничего сложного.
Не, это понятно. Я про квантификаторы: +? и им подобные. Никак не могу запомнить, что и как работает. И да:

Не работает :)
07.10.2018 в 19:15

We rise up for the things we believe in over and over again
Аа, понял, почему не работает. Кавычки лишние XD
09.10.2018 в 00:40

Тотальная неудачница и убийца жёстких дисков.
Я про квантификаторы: +? и им подобные. Никак не могу запомнить, что и как работает.

У меня программа – RegExp Playground, я в ней подсказку смотрю, когда забываю ^^'