- Hálózati / IP kamera
- Microsoft Excel topic
- Musk szerint már jövőre itt vannak a Tesla Optimus humanoid robotok
- Milyen routert?
- Közel 1 billió dollárt vesztettek a big tech óriásai
- A TikTokon marakodik Trump és Biden, betilthatja az USA
- Megrendszabályozza a Pornhubot az EU
- Kaspersky Antivirus és Internet Security Fórum
- Az MSI RadiX AXE6600 tesztje – router, játékosoknak
- Nagyon gyorsan betilthatja az EU a TikTok újítását
-
IT café
Új hozzászólás Aktív témák
-
Tigerclaw
nagyúr
válasz Weareus #15355 üzenetére
Szerintem barmelyik, de lehet hogy van a neten keresztrejtveny kesziteshez valami library, talan meg framework is es akkor adott a nyelv is hozza. Nullarol kezdve is meg lehet csinalni, ha van sok idod. Jo lenne tudni, hogy milyen vegeredmenyt varsz. Konzolos app, vagy grafikus, hogy akarod kezelni a bevitelt. Kell-e hozza netes tamogatas, valamilyen kliens-szerver megoldasban, vagy egy single page web alkalmazas. Meg persze fontos az is, hogy milyen nyelvet ismersz.
Az a baj a világgal, hogy a hülyék mindenben holtbiztosak, az okosak meg tele vannak kételyekkel.
-
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ó.
-
kovisoft
őstag
válasz Weareus #15517 üzenetére
Természetesen ezt is meg lehet oldani reguláris kifejezésekkel. Első lépésként minden sor elejére beteszünk jó sok szóközt. Pl:
Find: ^
Replace: (jó sok szóköz, nem írom ide, mert úgysem látszik)Második lépés: minden sornak csak az utolsó N db karakterét hagyjuk meg. Pl. N=20 esetén:
Find: ^.*(.{20})$
Replace: \1Ez az utolsó 20 karakterből csinálja az 1. számú csoportot, és csak ezt hagyja meg a sorban.
Ha a szólistában lennének a szavak végén kóbor whitespace karakterek, akkor lehet úgy módosítani, hogy azokat is szedje le.Ezután lehet rendezni a sorokat (Edit/Line Operations/Sort Lines Lexicographically). Majd a végén le lehet szedni a fölösleges szóközöket a szavak elejéről:
Find: ^ *
Replace: (üres string) -
kovisoft
őstag
válasz Weareus #15520 üzenetére
A pdf értelmezésében nem nagyon tudok segíteni. Talán a Ghostscript tud olyat, hogy pdf-et valamilyen más szövegformátumra konvertál, esetleg olyanra is, ami megőrzi a betűtípust. A pdf-fel ugyanis az a baj, hogy nem egy markup language, és talán úgy lesz félkövér valami, hogy más (félkövér) font-tal kell az adott szövegrészt renderelni. Nincs benne olyan, mint mondjuk html-ben a <b>...</b>.
Ha előáll egy olyan szövegfájlod, amiben valamilyen szabályszerűség alapján el lehet dönteni, hogy mi tartozik a címszavak közé, akkor arra lehet kreálni egy reguláris kifejezést. A pdf részt viszont passzolom.
-
Domonkos
Ármester
-
Domonkos
Ármester
válasz Weareus #15527 üzenetére
En innen
grep -o
-val mennek tovabb. - nem tudom, hogy a te OS-eden ennek mi a megfeleloje. Igazabol jo lenne latni is a mostani allapotot, legalabb a relevans resznek egy reszletet.Html-t akarmilyen szovegszerkesztovel meg tudsz nyitni. Ha az sikerul, akkor a<b>
es</b>
tagek kozti reszek lesznek szamodra erdekesek. Ezeket kellene majd kivagnod.
Sry. Ezzel teljesen becsaptalak volna.[ Szerkesztve ]
Gender of electrical connectors is defined by the pins.
-
kovisoft
őstag
válasz Weareus #15527 üzenetére
Ha továbbra is Notepad++-ban akarod megoldani, akkor olyan reguláris kifejezést kell használni, ami pl. a </b> és <b> közötti részeket kitörli. Kérdés, hogy egy sorban lehet-e több címszó? Ha lehetséges, akkor szükség lehet több lépésre:
1. Lecserélni egy sortörésre egy adott soron belül az előző címszót záró </b> és a következő címszót kezdő <b> közötti akármit (lazy ? operátor kell, nehogy a köztes <b>-k is törölve legyenek):
Find: </b>.*?<b>
Replace: \n2. Ugyanaz, mint az előbb, csak a sor elejétől a kezdő <b>-ig, és sortörés sem kell:
Find: ^.*?<b>
Replace: (üres string)3. Ugyanaz, mint az előbb, csak az utolsó </b>-től a sor végéig, és itt sem kell sortörés:
Find: </b>.*?$
Replace: (üres string)Szerk: Feltételeztem, hogy a bold szöveg <b>címszó</b> formában van a file-ban, de természetesen más markuppal is hasonlóan megy a dolog.
[ Szerkesztve ]
-
Domonkos
Ármester
válasz Weareus #15532 üzenetére
Nincs notepad++-om, hogy ki tudjam probalni, de a
.*$
csereje az ures stringre meg kell hogy oldja. (igen, az ott egy space a pont elott)Persze itt is jatszik, hogy megnyitod tablazatkezelovel, hogy a space az elvalasztokarakter es torolsz minden oszlopot, ami nem kell...
Gender of electrical connectors is defined by the pins.
-
kovisoft
őstag
válasz Weareus #15534 üzenetére
Ha a címszavak mindig a sor elején vannak, és amennyiben több címszó van egy sorban, úgy mindig vesszővel vannak elválasztva, akkor a Domonkos által javasolt cserét lehet úgy módosítani, hogy csak az olyan szóköztől kezdje a törlést, amit nem előz meg egy vessző:
Find: ([^,]) .*$
Replace: \1 -
dabadab
titán
válasz Weareus #15816 üzenetére
Van két szólistám, amit notepad ++-ban szeretnék összerakni egybe
Itt ezen a ponton nem értettem, hogy hogyan jön össze egy szövegszerkesztő két zenésszel.
Ilyenkor azokat a sorokat, (minden sorban pontosan egy szó van), amik kétszer v. többször fordulnak elő, kitörli, de egyet meghagy belőle.
A kérdés az, hogy melyiket?Az elsőt hagyja meg.
[ Szerkesztve ]
DRM is theft
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!