-
Fototrend

Új hozzászólás Aktív témák
-
kovisoft
őstag
válasz
Weareus
#15514
üzenetére
Ha Notepad++-ban szeretnéd megoldani (vagy bármilyen más szövegszerkesztőben, ami kezel reguláris kifejezéseket), akkor először biztosan kell tudni, hogy milyen szabály alapján lehet megtalálni, hogy meddig tart a szerző és hol kezdődik a mű címe.
Az egyik lehetőség, ha - mint írtad - a kettő között van egy tabulátor. Ekkor egy olyan reguláris kifejezést kell használni, amiben a csoportokat tabulátorok választják el. Pl:
Find: ^([^\t]*)\t([^\t]*)\t(.*)$
Replace: \2\t\1\t\3ahol a Find kifejezés 3 csoportot hoz létre, az 1. a név, ez az első tabulátorig tart, a 2. a cím, ez a második tabulátorig tart, a 3. az utolsó zárójeles rész. A Replace kifejezés pedig felcseréli az 1. és 2. csoportot, és tabulátort tesz közéjük.
Ha nincsenek a mezők tabulátorral elválasztva (mindenhol csak szóközök vannak), akkor nem igazán lehet automatikusan megoldani, hiszen nem tudjuk, hogy az első 2 szó a név, utána kezdődik a cím, vagy az első 3 (vagy akár több) szó a név (mert többnevű a szerző). De ha mondjuk feltételezzük, hogy a legtöbb sor esetében 2 szóból áll a név, akkor arra egy olyan reguláris kifejezést lehet használni, amelyik az első 2 szót rakja bele az első csoportba. Pl:
Find: ^(\S+ \S+) (.*) (\([^()]*\))$
Replace: \2 \1 \3ahol a Find szintén 3 csoportot hoz létre, de most az 1. csoport az első két szó szóközökkel elválasztva, a 2. csoport minden, ami az utolsó zárójeles részig tart, a 3. csoport az utolsó zárójeles rész a sorvége előtt (ugyanis lehet még zárójel a címben is). A Replace itt is felcseréli az 1. és 2. csoportot, de szóközt teszt közéjük.
Sajnos ez utóbbi esetben végig kell majd nézni a szöveget, hogy hol van olyan sor, ahol a szerző(k) neve nem csupán 2 szó.
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- Dell Core i5 - i7 - 8-10-11-12. gen. üzleti kategóriás notebookok számlával
- Lenovo Thinkstation P320 MT,E3-1220 v6,16GB DDR4,256GB SSD,Quadro M2000 4GB VGA,WIN11
- Lenovo Thinkstation P320 MT,E3-1220 v6,32GB DDR4,256GB SSD,Quadro P2000 5GB VGA,WIN11
- GAMER PC! Ryzen 7600X / RTX 5070 / 32GB DDR5 / 500GB NVMe / 850w Gold / BeszámítOK !
- AKCIÓ! LENOVO ThinkPad P15 Gen1 munkaállomás - i7 10850H 16GB DDR4 256GB SSD Quadro T1000 4GB W
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

