Programový balík na manipuláciu s textom

Programový balík je možné použiť s nasledujúcimi postupmi

balík

V programe Delphi alebo Free Pascal s pomocou knižnice (jednotky) Mysnobol

Používajú sa na to nasledujúce súbory: mysnobol.pas mystring.pas myintarray.pas

Knižnice boli testované pomocou programov Delphi6, Delphi10 a Lazarus alebo Freepascal.

Ak nie je k dispozícii žiadny prekladač Pascal, môžete použiť tlmočník Pascal Pscript.

Vzory je možné použiť aj v aplikácii SnobolIDE. Tu môžete zadať vyhľadávací vzor, ​​ktorý sa potom nahradí náhradným vzorom.

Všetky potrebné súbory a dokumentácia sa nachádzajú v súbore snobol.zip

Tento súbor je účelne rozbalený do adresára, do ktorého je tiež možný prístup na zápis, napríklad \ appdata \ snobol

Sú opísané metódy rozpoznávania a spracovania textu pomocou tried pre porovnávanie vzorov založené na programovacom jazyku SNOBOL. Triedy sa čiastočne menia v porovnaní s modelom SNOBOL, aby sa dosiahla vyššia efektivita.

SNOBOL 4 (S.triG Oriented symbolic Ľčíslo úzkosti 4) je štvrtá a posledná verzia série programovacích jazykov na účely manipulácie s reťazcami. Tieto jazyky vyvinuli v rokoch 1962 až 1967 v AT & T's Bell Laboratories David J. Farber, Ralph E. Griswold a Ivan P. Polonsky.

Podstatným rozlišovacím znakom od v tom čase používaných programovacích jazykov je existencia vzorov ako „prvotriedneho“ dátového typu, t. H. dátový typ, s ktorého hodnotou je možné manipulovať akýmkoľvek spôsobom ako v iných programovacích jazykoch, ako aj operátormi reťazenia a manipulácie so vzormi. Reťazce, ktoré sa generujú za behu, je možné spracovať a spustiť ako program. Vzor v SNOBOL 4 môže byť veľmi jednoduchý, ale aj veľmi zložitý. Jednoduchý vzor je napr. B. iba reťazec ako „ABCD“. Zložitým vzorom môže byť na druhej strane veľká štruktúra, ktorá napr. B. vie opísať úplnú gramatiku počítačového jazyka. (Wikipedia)

V 70. a 80. rokoch sa SNOBOL 4 široko používal ako jazyk na manipuláciu s textom. V posledných rokoch však jeho popularita klesá, pretože novšie a efektívnejšie jazyky ako Awk a Perl sú čoraz populárnejšie na manipuláciu s reťazcami pomocou regulárnych výrazov. Na rozdiel od Regexu v Perle však SNOBOL umožňuje aj rozpoznávanie hranatých štruktúr, ktoré sa nedajú popísať regulárnymi výrazmi.

(1) Zhoda vzorov

Pri porovnávaní vzorov v textoch sa zaoberáme definíciou testovacích vzorov (vzorov), ktoré sú kombináciou schopné opísať voľne sa vyskytujúce testovacie štruktúry. Vzory a ich kombinácie by mali byť schopné rozpoznať pomocou vhodných algoritmov. Takéto vzory sú súčasťou mnohých programovacích a skriptovacích jazykov. Triedu pozná napríklad jazyk JAVA tokenizér, kde je možné text rozdeliť na časti pomocou oddeľovačov. Vďaka svojim regulárnym výrazom (regulárny výraz: regulárny výraz Perl) má skriptový jazyk PERL tiež veľmi účinnú pomôcku na opis a rozpoznávanie vzorov. Jedným z prvých jazykov špeciálne zameraných na tento typ spracovania textu bol SNOBOL. Prístup popísaný nižšie v podstate využíva vzory definované v SNOBOL. Nedefinuje však nový programovací alebo skriptovací jazyk, ale implementácia sa uskutočňuje prostredníctvom tried a funkcií napísaných v existujúcom jazyku (PASCAL-DELPHI). To umožňuje použiť metodiku v akomkoľvek programe napísanom v týchto jazykoch. Možná by bola aj implementácia napríklad v Jave alebo C ++.

Vzory môžu obsahovať:

Struny danej dĺžky

všetky reťazce až po špeciálny znak

najdlhší rad prázdnych miest

akékoľvek opakovania reťazca

Reťazce vyvážené vzhľadom na dané symboly zátvoriek