Regulárny výraz - odstránenie prvej pomlčky

Programovacie jazyky, rady, poradňa...
ThunderBoy
Light Expert
Light Expert
Používateľov profilový obrázok
Príspevky: 74
Registrovaný: 09 nov 2005, 18:40

Regulárny výraz - odstránenie prvej pomlčky

Príspevok od používateľa ThunderBoy »

Zdravíčko

Už cez pol dňa na internete vyhľadávam regulárny výraz na odstránenie prvej pomlčky v názvoch obrovského množstva audio súborov.
No, nič funkčného som nenašiel. Určite sa to dá úplne jednoducho naprogramovať, ale ja už som v koncoch. :?
Mám funkčný výraz s bodkami (namiesto prvej pomlčky), ale nepodarilo sa mi ho upraviť pre pomlčku. Hľadať: ^([^.]*)\.(.*)$ Nahradiť: $1$2 Používam tento výraz pre Total Commander.

Mám názov súboru napr.:
02 - Nejaky text - Dalsi text.ogg

Potrebujem, aby výsledný názov súboru vyzeral takto:
02 Nejaky text - Dalsi text.ogg
*****HERO*****
Guru wannabe
Guru wannabe
Používateľov profilový obrázok
Príspevky: 2273
Registrovaný: 08 máj 2006, 1:34

Re: Regulárny výraz - odstránenie prvej pomlčky

Príspevok od používateľa *****HERO***** »

^([^-]*)-(.*)$
starysomar
Guru
Guru
Používateľov profilový obrázok
Príspevky: 2961
Registrovaný: 01 máj 2011, 20:26

Re: Regulárny výraz - odstránenie prvej pomlčky

Príspevok od používateľa starysomar »

Fajný fre softík či skôr utilitku mám od doby Win98 a zrovna dnes som potreboval očíslovať skoro 500 fotiek pred ich pôvodný názov. Názvy troje rôzne, potreboval som to zoradiť podľa dátumu nasnímania. Blbá zábava pred názov 001- až 500-
Mínusku per to, že je na číselnej klávesnici. Potom som všetky "mínusky" daal nahradiť tým softíkom. Pozriem sa po ňom až budem vo Windowse no zároveň pohľadám (dopytujem) free soft na pre(d)číslovanie názvov súborov taký, aby rešpektoval spôsob zoradenia tých súborov (teda podľa čoho majú ostať).
heker
Redeemer
Redeemer
Používateľov profilový obrázok
Príspevky: 11940
Registrovaný: 30 máj 2006, 20:27

Re: Regulárny výraz - odstránenie prvej pomlčky

Príspevok od používateľa heker »

Skus to cez program Mp3tag, ze by si to premenoval rovno na zaklade tagov.
ThunderBoy
Light Expert
Light Expert
Používateľov profilový obrázok
Príspevky: 74
Registrovaný: 09 nov 2005, 18:40

Re: Regulárny výraz - odstránenie prvej pomlčky

Príspevok od používateľa ThunderBoy »

*****HERO***** napísal: 21 sep 2022, 13:19 ^([^-]*)-(.*)$
Diky. Funguje to perfektne. Len som to trochu upravil, pretože miesto pomlčky tam zostali dve prázdne miesta. ^([^-]*)-.(.*)$

Autoeditácia príspevku po 9 min 24 sek:
starysomar napísal: 21 sep 2022, 13:58 ....
Mínusku per to, že je na číselnej klávesnici. Potom som všetky "mínusky" daal nahradiť tým softíkom. ....
To dokáže aj Total Commander. Problém je ten, že odstráni komplet všetky pomlčky v názvoch súborov. :D
starysomar
Guru
Guru
Používateľov profilový obrázok
Príspevky: 2961
Registrovaný: 01 máj 2011, 20:26

Re: Regulárny výraz - odstránenie prvej pomlčky

Príspevok od používateľa starysomar »

Total Commander som si nekúpil. Ja viem - dá sa odkliknúť --- aj po dobe, na ktorú je free no ja som taký divný - čo potrebujem, to si kúpim, čo si nekúpim, to nezneužívam (až na nejaké bezočivé výnimky, napríklad až raz som zneužil akýsi nahrávač vraj doživotne free - len autor zabudol napísať, že iba na záznam zvuku do jedinej minúty a potom sa do nahrávok vkopíruje *ebnutá hláška skomolenou angličtinou s čínskym prízvukom - ok - ako on, tak aj ja - vygeneroval som namiesto nej zhodný súbor s "tichom"...)
heker
Redeemer
Redeemer
Používateľov profilový obrázok
Príspevky: 11940
Registrovaný: 30 máj 2006, 20:27

Re: Regulárny výraz - odstránenie prvej pomlčky

Príspevok od používateľa heker »

Ty o com pises? Koho zaujima ci si si kupil TCM alebo nie? Ked nemas co k veci napisat, tak radsej nenapis nic!
*****HERO*****
Guru wannabe
Guru wannabe
Používateľov profilový obrázok
Príspevky: 2273
Registrovaný: 08 máj 2006, 1:34

Re: Regulárny výraz - odstránenie prvej pomlčky

Príspevok od používateľa *****HERO***** »

ThunderBoy napísal: 21 sep 2022, 20:02 Diky. Funguje to perfektne. Len som to trochu upravil, pretože miesto pomlčky tam zostali dve prázdne miesta. ^([^-]*)-.(.*)$
tak to potom radsej ^([^-]*)-[ ]*(.*)$, ak by tam ta medzera po pomlcke nahodou nebola, nech ti to nezahodi nejake pismeno :)
ThunderBoy
Light Expert
Light Expert
Používateľov profilový obrázok
Príspevky: 74
Registrovaný: 09 nov 2005, 18:40

Re: Regulárny výraz - odstránenie prvej pomlčky

Príspevok od používateľa ThunderBoy »

*****HERO***** napísal: 21 sep 2022, 22:21 tak to potom radsej ^([^-]*)-[ ]*(.*)$, ak by tam ta medzera po pomlcke nahodou nebola, nech ti to nezahodi nejake pismeno :)
Diky. Zrejme si cital moje myslienky. Chcel som sa ta na to tiez spytat, pretoze presne na tento problem som uz narazil. Teraz som uz uplne spokojny. Keby cosik ineho, tak sa ozvem. :pivko:

Autoeditácia príspevku po 23 hod 9 min 52 sek:
Mám ešte jeden dotaz ohľadne pomlčiek. Problém je aj s takýmto formátom súborov.
Počet slov v každej časti býva rôzny. Dôležitá je prvá pomlčka bez medzier za dvoma číslami (výnimočne môže byť iba jedno číslo) a druhá pomlčka je tiež bez medzier medzi ďalším textom. Napr.:
01-text_text-text_text_text_(text_text).ogg
Výsledný text by som potreboval v takomto formáte:
01 text text - text text text (text text).ogg
Teda finálne takto, ak sa to dá reg. výrazmi. 8) TC to takto nedokáže (aspoň, čo viem).
01 Text text - Text text text (Text text).ogg
harrison314
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 5053
Registrovaný: 27 máj 2009, 20:42
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: Regulárny výraz - odstránenie prvej pomlčky

Príspevok od používateľa harrison314 »

Toto budes musiet robit asi nadvakrat. Nasjkor odstranis prvu pomlcku tym regularom co uz mas.

A medzeri k dlasim v druhom kroku pomocou "([^-\s])-([^-\s])" -> "$1 - $2". Popripade proste len "-" -> " - ".
ThunderBoy
Light Expert
Light Expert
Používateľov profilový obrázok
Príspevky: 74
Registrovaný: 09 nov 2005, 18:40

Re: Regulárny výraz - odstránenie prvej pomlčky

Príspevok od používateľa ThunderBoy »

harrison314 napísal: 23 sep 2022, 21:51 Toto budes musiet robit asi nadvakrat. Nasjkor odstranis prvu pomlcku tym regularom co uz mas.

A medzeri k dlasim v druhom kroku pomocou "([^-\s])-([^-\s])" -> "$1 - $2". Popripade proste len "-" -> " - ".
Dik, ale toto urobí poriadky iba s pomlčkami. Tie podčiarniky nerieši. Tie mám urobiť na tretí krát premenovaním? Ak áno, tak to už ma teraz prechádza chuť robiť každý súbor na tri krát. :cry:
starysomar
Guru
Guru
Používateľov profilový obrázok
Príspevky: 2961
Registrovaný: 01 máj 2011, 20:26

Re: Regulárny výraz - odstránenie prvej pomlčky

Príspevok od používateľa starysomar »

Sa s tým to... 20 rokov používam na premenovávanie:
http://www.1-4a.com/rename/

Vie to zmeniť zameniť, pridať, odobrať kdekoľvek v reťazci, vrátane prípony.
Ak Ti bude málo možností, stlač F2 :)
Šlo to pod Win98, ide to aj pod Win11.
Neinštaluje sa :)

Drobná rada - otestuj si to najprv na kópii časti súborov. Inak má aj UNDO...
harrison314
Hardcore addict
Hardcore addict
Používateľov profilový obrázok
Príspevky: 5053
Registrovaný: 27 máj 2009, 20:42
Bydlisko: Bratislava
Kontaktovať používateľa:

Re: Regulárny výraz - odstránenie prvej pomlčky

Príspevok od používateľa harrison314 »

Pouzi Powershell:

Kód: Vybrať všetko

ls *.ogg | Rename-Item -NewName {$_.Name  -replace "^([^-]*)-[ ]*(.*)$", '$1 $2' -replace "-", " - " -replace "_", " "}
heker
Redeemer
Redeemer
Používateľov profilový obrázok
Príspevky: 11940
Registrovaný: 30 máj 2006, 20:27

Re: Regulárny výraz - odstránenie prvej pomlčky

Príspevok od používateľa heker »

Vsaknsi zamen pomlcky za podciarku. Premenuj ti hromadne (CTRL+M) a tam si zvol si tam vsetky subory na premenovanie. Aj keby si to robil na 3x, tak to mas hromadne spravene za par sekund.

Vyssie som ti pisal o programe Mp3tag, tym editujes tagy ci v mp3 alebo aj ogg subore. A dokazes ich hromadne premenovat podla tagov, pripadne si upravit nazor vysledneho suboru ako potrebujes.
Napísať odpoveď