Szövegfeldolgozás I. INFOÉRA

Slides:



Advertisements
Hasonló előadás
Szimmetriák szerepe a szilárdtestfizikában
Advertisements

Kauzális modellek Randall Munroe.
A TUDOMÁNYOS KUTATÁS MÓDSZERTANA
2.1Jelátalakítás - kódolás
Az úttervezési előírások változásai
Fizika II..
Számítógépes Hálózatok
Profitmaximalizálás  = TR – TC
A járműfenntartás valószínűségi alapjai
Szenzorok Bevezetés és alapfogalmak
Végeselemes modellezés matematikai alapjai
A magas baleseti kockázatú útszakaszok rangsorolása
Szerkezetek Dinamikája
MÉZHAMISÍTÁS.
Hőtan BMegeenatmh 5. Többfázisú rendszerek
BMEGEENATMH Hőátadás.
AUTOMATIKAI ÉPÍTŐELEMEK Széchenyi István Egyetem
Skandináv dizájn Hisnyay – Heinzelmann Luca FG58PY.
VÁLLALATI Pénzügyek 2 – MM
Hőtan BMEGEENATMH 4. Gázkörfolyamatok.
Szerkezetek Dinamikája
Összeállította: Polák József
A TUDOMÁNYOS KUTATÁS MÓDSZERTANA
Csáfordi, Zsolt – Kiss, Károly Miklós – Lengyel, Balázs
Tisztelt Hallgatók! Az alábbi példamegoldások segítségével felkészülhetnek a 15 pontos zárthelyi dolgozatra, ahol azt kell majd bizonyítaniuk, hogy a vállalati.
J. Caesar hatalomra jutása atl. 16d
Anyagforgalom a vizekben
Kováts András MTA TK KI Menedék Egyesület
Az eljárás megindítása; eljárási döntések az eljárás megindítása után
Melanóma Hakkel Tamás PPKE-ITK
Az új közbeszerzési szabályozás – jó és rossz gyakorlatok
Képzőművészet Zene Tánc
Penicillin származékok szabadgyökös reakciói
Boros Sándor, Batta Gyula
Bevezetés az alvás-és álomkutatásba
Kalandozások az álomkutatás területén
TANKERÜLETI (JÁRÁSI) SZAKÉRTŐI BIZOTTSÁG
Nemzetközi tapasztalatok kihűléssel kapcsolatban
Gajdácsi József Főigazgató-helyettes
Követelmények Szorgalmi időszakban:
Brachmann Krisztina Országos Epidemiológiai Központ
A nyelvtechnológia eszközei és nyersanyagai 2016/ félév
Járványügyi teendők meningococcus betegség esetén
Kezdetek októberében a könyvtár TÁMOP (3.2.4/08/01) pályázatának keretében vette kezdetét a Mentori szolgálat.
Poszt transzlációs módosulások
Vitaminok.
A sebész fő ellensége: a vérzés
Pharmanex ® Bone Formula
Data Mining Machine Learning a gyakorlatban - eszközök és technikák
VÁLLALATI PÉNZÜGYEK I. Dr. Tóth Tamás.
Pontos, precíz és hatékony elméleti módszerek az anion-pi kölcsönhatási energiák számítására modell szerkezetekben előadó: Mezei Pál Dániel Ph. D. hallgató.
Bevezetés a pszichológiába
MOSZKVA ZENE: KALINKA –HELMUT LOTTI AUTOMATA.
Bőrimpedancia A bőr fajlagos ellenállásának és kapacitásának meghatározása Impedancia (Z): Ohmos ellenállást, frekvenciafüggő elemeket (kondenzátort, tekercset)
Poimenika SRTA –
Végeselemes modellezés matematikai alapjai
Összefoglalás.
Az energiarendszerek jellemzői, hatékonysága
Varga Júlia MTA KRTK KTI Szirák,
Konzerváló fogászat Dr. Szabó Balázs
Outlier detektálás nagyméretű adathalmazokon
További MapReduce szemelvények: gráfproblémák
Ráhagyások, Mérés, adatgyűjtés
Járműcsarnokok technológiai méretezése
Grafikai művészet Victor Vasarely Maurits Cornelis Escher.
VÁLLALATI PÉNZÜGYEK I. Dr. Tóth Tamás.
RÉSZEKRE BONTOTT SOKASÁG VIZSGÁLATA
Az anyagok fejlesztésével a méretek csökkennek [Feynman, 1959].
Bevezetés a színek elméletébe és a fényképezéssel kapcsolatos fogalmak
Minőségmenedzsment alapjai
Előadás másolata:

Szövegfeldolgozás I. INFOÉRA 2006 2006.11.18 Juhász István-Zsakó László: Informatikai képzések a ELTE-n

Szöveges típusok Szöveges típusok (ismétlés) karakter típus INFOÉRA 2006 2006.11.18 Szöveges típusok Szöveges típusok (ismétlés) karakter típus szöveg típus szövegfájl típus (input, illetve output szövegfájl) Zsakó László: Szövegfeldolgozás 2019.07.04. 19:20 Juhász István-Zsakó László: Informatikai képzések a ELTE-n 2

Szöveges típusok Karakterábrázolás INFOÉRA 2006 2006.11.18 Szöveges típusok Karakterábrázolás fix kódhossz (ASCII, EBCDIC, ..., több karakterkészlet) változó kódhossz (pl. morze, Huffman) telex: betű-számváltó UTF-8-ban minden ékezetes magyar betű 2 byte-ot foglal el, míg egyéb speciális karakterek akár ennél hosszabbak is lehetnek. Zsakó László: Szövegfeldolgozás 2019.07.04. 19:20 Juhász István-Zsakó László: Informatikai képzések a ELTE-n 3

Szöveges típusok Szövegábrázolás Műveletek fix hossz változó hossz INFOÉRA 2006 2006.11.18 Szöveges típusok Szövegábrázolás fix hossz változó hossz karakterszámmal végjellel (pl. 0 kódú karakter) Műveletek hossz(s) relációk, értékadás + (azaz egymásután írás) Zsakó László: Szövegfeldolgozás 2019.07.04. 19:20 Juhász István-Zsakó László: Informatikai képzések a ELTE-n 4

Szöveges típusok A. A szöveg karakterek tömbje INFOÉRA 2006 2006.11.18 Szöveges típusok A. A szöveg karakterek tömbje indexelés – s(i) B. A szöveg karakterek sorozata első(s), elsőutániak(s), utolsó(s), utolsóelőttiek(s), elejére(s,k), végére(s,k) C. A szöveg szövegekből áll függvények: bal(s,db), jobb(s,db), közép(s,k,db), közép(s,k,v) vagy részképzés – s(a..b), s(a..) , s(..b) Zsakó László: Szövegfeldolgozás 2019.07.04. 19:20 Juhász István-Zsakó László: Informatikai képzések a ELTE-n 5

Szöveges típusok B. A szöveg karakterek sorozata INFOÉRA 2006 2006.11.18 Szöveges típusok B. A szöveg karakterek sorozata Függvény első(s):karakter első:=s(1) Függvény vége. Függvény elsőutániak(s):szöveg t:=’’ Ciklus i=2-től hossz(s)-ig t:=t+s(i) Ciklus vége elsőutániak:=t Függvény elejére(s,k):szöveg elejére:=k+s Zsakó László: Szövegfeldolgozás 2019.07.04. 19:20 Juhász István-Zsakó László: Informatikai képzések a ELTE-n 6

Szöveges típusok C. A szöveg szövegekből áll Függvény bal(s,db):szöveg INFOÉRA 2006 2006.11.18 Szöveges típusok C. A szöveg szövegekből áll Függvény bal(s,db):szöveg t:=’’ Ciklus i=1-től db-ig t:=t+s(i) Ciklus vége bal:=t Függvény vége. Zsakó László: Szövegfeldolgozás 2019.07.04. 19:20 Juhász István-Zsakó László: Informatikai képzések a ELTE-n 7

Szöveges típusok általánosítása INFOÉRA 2006 2006.11.18 Szöveges típusok általánosítása Fogalmak (azaz új típusok): karakter szó sor lap dokumentum Fogalmak a megjelenítéshez: képsor képlap Zsakó László: Szövegfeldolgozás 2019.07.04. 19:20 Juhász István-Zsakó László: Informatikai képzések a ELTE-n 8

Szöveges típusok általánosítása INFOÉRA 2006 2006.11.18 Szöveges típusok általánosítása Szó típus fogalma szó=Sorozat(karakter) Szó típus műveletei: végére(szó,karakter) elejéről(szó,karakter) Ha írásjelek vannak a szövegben, akkor azok tartozzanak az adott szóhoz! Zsakó László: Szövegfeldolgozás 2019.07.04. 19:20 Juhász István-Zsakó László: Informatikai képzések a ELTE-n 9

Szöveges típusok általánosítása INFOÉRA 2006 2006.11.18 Szöveges típusok általánosítása Műveletek megvalósítása: Eljárás végére(szó,karakter): szó:=szó+karakter Eljárás vége. Eljárás elejéről(szó,karakter): karakter:=első(szó) szó:=elsőutániak(szó) Eljárás vége. Zsakó László: Szövegfeldolgozás 2019.07.04. 19:20 Juhász István-Zsakó László: Informatikai képzések a ELTE-n 10

Szöveges típusok általánosítása INFOÉRA 2006 2006.11.18 Szöveges típusok általánosítása Sor típus fogalma: sor=Sorozat(szó) Sor típus műveletei: végére(sor,szó) elejéről(sor,szó) Elválasztó jel szavak között: szóköz sorvég Zsakó László: Szövegfeldolgozás 2019.07.04. 19:20 Juhász István-Zsakó László: Informatikai képzések a ELTE-n 11

Szöveges típusok általánosítása INFOÉRA 2006 2006.11.18 Szöveges típusok általánosítása Műveletek megvalósítása: Eljárás végére(sor,szó): Ha sor=’’ akkor sor:=szó különben sor:=sor+’ ’+szó Eljárás vége. Eljárás elejéről(sor,szó): szó:=’’ Ciklus amíg sor’’ és első(sor)’ ’ szó:=szó+első(sor); sor:=elsőutániak(sor) Ciklus vége Ha sor’’ akkor sor:=elsőutániak(sor) Eljárás vége. Figyelem! Itt és a későbbi algoritmusokban használt első() és elsőutániak() a szöveg típus műveleteit jelentik! Zsakó László: Szövegfeldolgozás 2019.07.04. 19:20 Juhász István-Zsakó László: Informatikai képzések a ELTE-n 12

Szöveges típusok általánosítása INFOÉRA 2006 2006.11.18 Szöveges típusok általánosítása Lap típus fogalma lap=Sorozat(sor) Lap típus műveletei: végére(lap,sor) elejéről(lap,sor) Végjel sorok után: sorvég Zsakó László: Szövegfeldolgozás 2019.07.04. 19:20 Juhász István-Zsakó László: Informatikai képzések a ELTE-n 13

Szöveges típusok általánosítása INFOÉRA 2006 2006.11.18 Szöveges típusok általánosítása Műveletek megvalósítása: Eljárás végére(lap,sor): lap:=lap+sor+SORVÉG Eljárás vége. Eljárás elejéről(lap,sor): sor:=’’ Ciklus amíg első(lap)SORVÉG sor:=sor+első(lap); lap:=elsőutániak(lap) Ciklus vége lap:=elsőutániak(lap) Zsakó László: Szövegfeldolgozás 2019.07.04. 19:20 Juhász István-Zsakó László: Informatikai képzések a ELTE-n 14

Szöveges típusok általánosítása INFOÉRA 2006 2006.11.18 Szöveges típusok általánosítása Dokumentum típus fogalma dokumentum=Sorozat(lap) Dokumentum típus műveletei: végére(dokumentum,lap) elejéről(dokumentum,lap) Végjel lapok után: lapvég Mi van, ha az utolsó lap után nincs lapvég-jel? Zsakó László: Szövegfeldolgozás 2019.07.04. 19:20 Juhász István-Zsakó László: Informatikai képzések a ELTE-n 15

Szöveges típusok általánosítása INFOÉRA 2006 2006.11.18 Szöveges típusok általánosítása Műveletek megvalósítása: Eljárás végére(dokumentum,lap): dokumentum:=dokumentum+lap+LAPVÉG Eljárás vége. Eljárás elejéről(dokumentum,lap): lap:=’’ Ciklus amíg első(dokumentum)LAPVÉG lap:=lap+első(dokumentum) dokumentum:=elsőutániak(dokumentum) Ciklus vége Zsakó László: Szövegfeldolgozás 2019.07.04. 19:20 Juhász István-Zsakó László: Informatikai képzések a ELTE-n 16

Szöveges típusok általánosítása INFOÉRA 2006 2006.11.18 Szöveges típusok általánosítása Meggondolandó: mondat típus A mondat szavak sorozata, ahol az utolsó szó utolsó karaktere mondat-vég jel (. vagy ? vagy !). Eljárás végére(sor,mondat,jel): Ha sor=’’ akkor sor:=mondat+jel különben sor:=sor+’ ’+mondat+jel Eljárás vége. Zsakó László: Szövegfeldolgozás 2019.07.04. 19:20 Juhász István-Zsakó László: Informatikai képzések a ELTE-n 17

Szöveges típusok általánosítása INFOÉRA 2006 2006.11.18 Szöveges típusok általánosítása Meggondolandó: mondat típus A mondat szavak sorozata, ahol az utolsó szó utolsó karaktere mondat-vég jel (. vagy ? vagy !). Eljárás elejéről(sor,mondat,jel): mondat:=’’ Ciklus amíg első(sor){’.’,’?’,’!’} mondat:=mondat+első(sor) sor:=elsőutániak(sor) Ciklus vége jel:=első(sor); sor:=elsőutániak(sor) Eljárás vége. Zsakó László: Szövegfeldolgozás 2019.07.04. 19:20 Juhász István-Zsakó László: Informatikai képzések a ELTE-n 18

Szöveges típusok általánosítása INFOÉRA 2006 2006.11.18 Szöveges típusok általánosítása Meggondolandó: Szó típus Az írásjel ne legyen része a szónak! Eljárás elejéről(sor,szó,jel): szó:=’’; jel:=’’ Ciklus amíg sor’’ és első(sor){’ ’}Írásjelek szó:=szó+első(sor); sor:=elsőutániak(sor) Ciklus vége Ha sor’’ akkor Ha első(sor)’ ’ akkor jel:=első(sor); sor:=elsőutániak(sor) sor:=elsőutániak(sor) Eljárás vége. Zsakó László: Szövegfeldolgozás 2019.07.04. 19:20 Juhász István-Zsakó László: Informatikai képzések a ELTE-n 19

Szöveges típusok általánosítása INFOÉRA 2006 2006.11.18 Szöveges típusok általánosítása Műveletek a formázáshoz: ElsőKépsor BalrólLevág JobbrólLevág BalraIgazít JobbraIgazít KözépreIgazít Sorkizárt Zsakó László: Szövegfeldolgozás 2019.07.04. 19:20 Juhász István-Zsakó László: Informatikai képzések a ELTE-n 20

Szöveges típusok általánosítása INFOÉRA 2006 2006.11.18 Szöveges típusok általánosítása Műveletek megvalósítása: Eljárás ElsőKépsor(sor,képsor): elejéről(sor,képsor) Ha sor’’ akkor elejéről(sor,X); van:=igaz Ciklus amíg hossz(képsor)+hossz(X)+1KSHOSSZ és van képsor:=képsor+’ ’+X Ha sor’’ akkor elejéről(sor,X) különben van:=hamis Ciklus vége Ha van akkor sor:=X+’ ’+sor Elágazás vége Eljárás vége. Zsakó László: Szövegfeldolgozás 2019.07.04. 19:20 Juhász István-Zsakó László: Informatikai képzések a ELTE-n 21

Szöveges típusok általánosítása INFOÉRA 2006 2006.11.18 Szöveges típusok általánosítása Műveletek megvalósítása: Eljárás BalrólLevág(ks): Ciklus amíg ks’’ és ks(1)=’ ’ ks:=elsőutániak(ks) Ciklus vége Eljárás vége. Eljárás JobbrólLevág(ks): Ciklus amíg ks’’ és ks(hossz(ks))=’ ’ ks:=utolsóelőttiek(ks) Zsakó László: Szövegfeldolgozás 2019.07.04. 19:20 Juhász István-Zsakó László: Informatikai képzések a ELTE-n 22

Szöveges típusok általánosítása INFOÉRA 2006 2006.11.18 Szöveges típusok általánosítása Műveletek megvalósítása: Eljárás BalraIgazít(ks): BalrólLevág(ks) Eljárás vége. Eljárás Jobbraigazít(ks): JobbrólLevág(ks) Ciklus amíg hossz(ks)<KSHOSSZ ks:=’ ’+ks Ciklus vége Zsakó László: Szövegfeldolgozás 2019.07.04. 19:20 Juhász István-Zsakó László: Informatikai képzések a ELTE-n 23

Szöveges típusok általánosítása INFOÉRA 2006 2006.11.18 Szöveges típusok általánosítása Műveletek megvalósítása: Eljárás KözépreIgazít(ks): BalrólLevág(ks); JobbrólLevág(ks) Ciklus amíg hossz(ks)<KSHOSSZ-1 ks:=’ ’+ks+’ ’ Ciklus vége Ha hossz(ks)<KSHOSSZ akkor ks:=ks+’ ’ Eljárás vége. Zsakó László: Szövegfeldolgozás 2019.07.04. 19:20 Juhász István-Zsakó László: Informatikai képzések a ELTE-n 24

Szöveges típusok általánosítása INFOÉRA 2006 2006.11.18 Szöveges típusok általánosítása Műveletek megvalósítása: Eljárás Sorkizárt(ks): BalrólLevág(ks); JobbrólLevág(ks) kell:=KSHOSSZ-hossz(ks); db:=Szoszamol(ks)-1 kellplusz:=kell MOD db; kell:=kell DIV db Elejéről(ks,szó,jel); uj:=szó+jel Ciklus i:=1-től db-ig Ha i≤kellplusz akkor uj:=uj+Szöközök(kell+1) különben uj:=uj+Szöközök(kell) Elejéről(ks,szó,jel); uj:=uj+szó+jel Ciklus vége ks:=uj Eljárás vége. Zsakó László: Szövegfeldolgozás 2019.07.04. 19:20 Juhász István-Zsakó László: Informatikai képzések a ELTE-n 25

Szövegfeldolgozási alapfeladatok INFOÉRA 2006 2006.11.18 Szövegfeldolgozási alapfeladatok Szűrés: egy szövegből vagy szövegfájlból hagyjunk ki bizonyos típusú részeket! Tömörítés: egy szöveget vagy szövegfájlt alakítsunk át úgy, hogy kevesebb helyet foglaljon (valamint alakítsuk vissza)! Keresés: egy szövegben vagy szövegfájlban keressünk egy szöveget! Zsakó László: Szövegfeldolgozás 2019.07.04. 19:20 Juhász István-Zsakó László: Informatikai képzések a ELTE-n 26

Szövegfeldolgozás: szűrés INFOÉRA 2006 2006.11.18 Szövegfeldolgozás: szűrés Általános feladat: egy szövegből vagy szövegfájlból hagyjunk ki bizonyos típusú részeket! Lehet kiválogatás, ha egyes karaktereket kell szűrni. Lehet kiválogatás előreolvasással, ha karakter-párokat kell szűrni. Lehet szókeresés, ha szavakat kell szűrni (de ez is lehet kiválogatás). Lehet jelpár keresés, ha páros jelek közötti részt kell szűrni! Zsakó László: Szövegfeldolgozás 2019.07.04. 19:20 Juhász István-Zsakó László: Informatikai képzések a ELTE-n 27

Szövegfeldolgozás: szűrés INFOÉRA 2006 2006.11.18 Szövegfeldolgozás: szűrés Szóköz szűrés Példa: Esik az eső  Esikazeső Eljárás Szűrés: Nyit(f,g) Ciklus amíg nem FileVége?(f) Olvas(f,kar) Ha kar' ' akkor Ír(g,kar) Ciklus vége Zár(f,g) Eljárás vége. Zsakó László: Szövegfeldolgozás 2019.07.04. 19:20 Juhász István-Zsakó László: Informatikai képzések a ELTE-n 28

Szövegfeldolgozás: szűrés INFOÉRA 2006 2006.11.18 Szövegfeldolgozás: szűrés Szóközcsoport szűrés – a szavak között csak egyetlen szóköz maradjon! Példa: Ugat a kutya  Ugat a kutya Eljárás Szűrés: Nyit(f,g) Ciklus amíg nem FileVége?(f) ÚjszóOlvas(f,szó) Ír(g,szó) Ciklus vége Zár(f,g) Eljárás vége. Zsakó László: Szövegfeldolgozás 2019.07.04. 19:20 Juhász István-Zsakó László: Informatikai képzések a ELTE-n 29

Szövegfeldolgozás: szűrés INFOÉRA 2006 2006.11.18 Szövegfeldolgozás: szűrés Lépjük át a szavak előtti szóközöket (és sorvégeket)! Eljárás ÚjszóOlvas(f,szó): Olvas(f,kar) Ciklus amíg kar=’ ’ vagy kar=SORVÉG Ciklus vége szó:=kar Ciklus amíg kar’ ’ és karSORVÉG Olvas(f,kar); szó:=szó+kar Eljárás vége. Most a szó része a szót követő szóköz vagy sorvég is. Zsakó László: Szövegfeldolgozás 2019.07.04. 19:20 Juhász István-Zsakó László: Informatikai képzések a ELTE-n 30

Szövegfeldolgozás: szűrés INFOÉRA 2006 2006.11.18 Szövegfeldolgozás: szűrés Karakter párok szűrése (pl. <=) – előreolvasás módszere: Eljárás Szűrés: Nyit(f,g); Olvas(f,ekar) Ciklus amíg nem FileVége?(f) Olvas(f,kar) Ha ekar=’<’ és kar=’=’ akkor Olvas(f,ekar) különben Ír(g,ekar); ekar:=kar Ciklus vége Ír(g,ekar); Zár(f,g) Eljárás vége. Figyelem! Az algoritmus kihasználja, hogy minden sor végén van egy sorvégjel. Zsakó László: Szövegfeldolgozás 2019.07.04. 19:20 Juhász István-Zsakó László: Informatikai képzések a ELTE-n 31

Szövegfeldolgozás: szűrés INFOÉRA 2006 2006.11.18 Szövegfeldolgozás: szűrés Szavak szűrése – egy szó kiírható, ha nincs benne a szűrendők halmazában: Eljárás Szűrés: Nyit(f,g) Ciklus amíg nem FileVége?(f) SzóOlvas(f,szó) Ha szóSzűrendők akkor Ír(g,szó) Ciklus vége Zár(f,g) Eljárás vége. Zsakó László: Szövegfeldolgozás 2019.07.04. 19:20 Juhász István-Zsakó László: Informatikai képzések a ELTE-n 32

Szövegfeldolgozás: szűrés INFOÉRA 2006 2006.11.18 Szövegfeldolgozás: szűrés Páros jelek közöttiek szűrése (pl. {,}) Eljárás Szűrés: Nyit(f,g); Kell:=igaz Ciklus amíg nem FileVége?(f) Olvas(f,kar) Ha kar=’{’ akkor Kell:=hamis különben ha kar=’}’ akkor Kell:=igaz különben ha Kell akkor Ír(g,kar) Ciklus vége Zár(f,g) Eljárás vége. Ez csak akkor működik helyesen, ha nincsenek egymásba ágyazott zárójelpárok. Zsakó László: Szövegfeldolgozás 2019.07.04. 19:20 Juhász István-Zsakó László: Informatikai képzések a ELTE-n 33

Szövegfeldolgozás: szűrés INFOÉRA 2006 2006.11.18 Szövegfeldolgozás: szűrés Páros jelek közöttiek szűrése (pl. {,}) Eljárás Szűrés: Nyit(f,g); Db:=0 Ciklus amíg nem FileVége?(f) Olvas(f,kar) Ha kar=’{’ akkor Db:=Db+1 különben ha kar=’}’ akkor Db:=Db-1 különben ha Db=0 akkor Ír(g,kar) Ciklus vége Zár(f,g) Eljárás vége. xx{xx{xx}xx}xx – a teljes belső rész kihagyása nyitott zárójelpárok számának kezelésével Zsakó László: Szövegfeldolgozás 2019.07.04. 19:20 Juhász István-Zsakó László: Informatikai képzések a ELTE-n 34

Szövegfeldolgozás I. előadás vége INFOÉRA 2006 2006.11.18 Juhász István-Zsakó László: Informatikai képzések a ELTE-n