Hirdetés
-
PROHARDVER!
Ú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!
- JBL ProFlora CO2 Starter Bio Set biológiai CO2 készlet 10-40 l-es édesvízi akváriumokhoz
- GYÖNYÖRŰ iPhone 15 Plus 128GB Pink -1 ÉV GARANCIA - Kártyafüggetlen, MS3353
- Bomba ár! Lenovo ThinkPad L580 - i5-8GEN I 16GB I 256GB SSD I 15,6" FHD I Cam I W11 I Garancia!
- Bomba ár! Asus K72F - i3-370M I 4GB I 120GB SSD I 17,3" HD+ I HDMI I Cam I W10 I Garancia!
- BESZÁMÍTÁS! MSI B450 R7 5700X 32GB DDR4 1TB SSD RTX 3070Ti 8GB Rampage SHIVA DeepCool 750W
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest