Beležnica regularnih izrazov: opis, zamenjava in primeri

Redni izraz Notepad je formalna teorija jezika, zaporedje znakov, ki definira iskalni vzorec. Običajno to predlogo uporabijo algoritmi za iskanje nizov za "iskanje" ali "iskanje in zamenjava" operacij v vrsticah. Oglejmo si vse v redu in podrobneje preučimo to temo.

Opis načela regularnih izrazov

Koncept je nastal v petdesetih letih prejšnjega stoletja, ko je ameriški matematik Stephen Cole Clini formaliziral opis navadnega jezika. Ta koncept se pogosto uporablja z orodji za obdelavo besedila Unix. Od osemdesetih let prejšnjega stoletja obstajajo različne sintakse za regularne izraze, od katerih je eden standard POSIX, druga pa se pogosto uporablja sintaksa Perl.
Regulatorji za beležke uporabljajo iskalniki za iskanje in zamenjavo pogovornih oken med urejevalniki besedil in urejevalniki besedil, pripomočki za obdelavo besedil, kot sta sed in AWK, ter leksikalno analizo. Številni programski jeziki zagotavljajo regularne izraze, vgrajene ali prek knjižnic.


Kako odstraniti prazne vrstice v regularnih izrazih v Beležnici?

Izraz "regularni izrazi" se pogosto uporablja za sklicevanje na posebno sintakso standardnega besedila (razen matematične oznake, opisane spodaj) za predložitev predlog, ki morajo biti skladne z besedilom. Vsak simbol v regularnem izrazu se razume kot metakarakter (s posebno vsebino) ali pravilnim znakom (s svojim dobesednim pomenom). Skupajmeta-znake in alfanumerične znake lahko uporabite za identifikacijo besedilnega gradiva določene predloge ali za obdelavo več primerkov.


Vzorci se lahko gibljejo od natančne enakosti do splošne podobnosti, nadzorovanih metaharkov. Sintaksa metakarakterov je posebej zasnovana tako, da predstavlja natančno določene cilje v zgoščeni in prilagodljivi obliki avtomatizacije obdelave besedila z različnih vhodov. Primerna je za vnos s standardno ASCII tipkovnico.

Notepad Regular Expression: Primeri in predloge

Regularni izraz, ki se pogosto imenuje predlogo, je izraz, ki se uporablja za označevanje niza nizov, potrebnih za določen namen. Na preprost način določite končni niz vrstic seznama njegovih elementov. Vendar pa pogosto obstajajo bolj jedrnati načini označevanja zahtevanega niza nizov. Na primer, komplet, ki vsebuje tri vrstice - Handel, H Zgodovina nastanka
Redni izrazi so nastali leta 1951, ko je matematik Steven Cole Clini opisal navadne jezike z uporabo matematičnih zapisov, imenovanih redni nizi. Pojavili so se v teoretičnih računalniških znanostih, vpodpodročja teorije avtomatov (model računalništva), opis in klasifikacija formalnih jezikov. Druge zgodnje izvedbe modelov vključujejo jezik SNOBOL, ki uporablja neredne izraze, in lastne modele, ki ustrezajo predlogi.
Niz pisav Notepad je bil široko uporabljen v regularnih izrazih od leta 1968 za dva namena: vzorčno ujemanje v urejevalniku besedila in leksikalno analizo v prevajalniku. Med prvimi pojavitvami regularnih izrazov v programski obliki je bil, da je Ken Thompson zgradil zapis Klein v urejevalniku QED kot orodje za preslikavo vzorcev v besedilne datoteke. Za hitrost je Thompson izvedel primerjavo regularnih izrazov z uporabo "natančnega časovnega" prevajanja (JIT) v kodo IBM 7094 v sistemu združljivega časa - pomemben zgodnji primer zbiranja JIT. Kasneje je dodal to funkcijo v urejevalnik Unix ed, kar je na koncu pripeljalo do uporabe priljubljenega orodja za iskanje grep za uporabo regularnih izrazov. Približno ob istem času, ko je Thompson razvil QED, je skupina raziskovalcev, vključno z Douglasom T. Rossom, predstavila orodje, ki temelji na regularnih izrazih, ki se uporabljajo za leksikalno analizo pri oblikovanju prevajalnikov.

Razvoj koncepta

Številne različice teh izvirnih oblik zamenjave regularnih izrazov Notepada so bile uporabljene v programih Unixa v Bell Labsu v sedemdesetih letih, vključno z vi, lex, sed, AWK in expr, kot tudi v drugih pripomočkih, kot je Emacs . Nato so te obrazce sprejeli številni programi, ki so bili v standardu POSIX.2 leta 1992.
V osemdesetih letih prejšnjega stoletja je bilo to bolj zapletenoRedni izrazi so nastali v Perlu, ki je bil prvotno izpeljan iz knjižnice regularnih izrazov, ki jo je napisal Henry Spencer (1986). Kasneje je napisal izvajanje razširjenih regularnih izrazov za Tcl. Knjižnica Tcl je hibridna izvedba NFA /DFA z izboljšanimi zmogljivostnimi lastnostmi.
Projekti programske opreme, ki so uporabljali izvajanje regularnega izraza Spencer Tcl, vključujejo tudi PostgreSQL. Perl se je kasneje razširil v izvorno knjižnico Spencer, da bi dodal številne nove funkcije, vendar še ni uporabil razširjenih regularnih izrazov Spencer v smislu učinkovitosti delovanja ali obdelave Unicode. Del prizadevanj za razvoj Perl 6 je izboljšati integracijo regularnih izrazov in povečati njihove zmožnosti, kar omogoča določitev analize slovničnih izrazov.
Rezultat je mini jezik, imenovan pravilnik Perl 6, ki se uporablja za definiranje slovnice, in tudi orodje za programerje v tem jeziku. Ta pravila podpirajo obstoječe funkcije regularnih izrazov.

Sodobna razvojna faza

Uporaba regularnih izrazov Notepad v iskanju in standardi za strukturirane informacije za modeliranje dokumentov in baz podatkov se je začela v šestdesetih letih in razširila v 80. letih prejšnjega stoletja, ko so konsolidirali industrijske standarde, kot je ISO SGML. Jedro strukture specifikacij standardnega jezika je sestavljeno iz regularnih izrazov. Od leta 1997 je Philip Hazel razvil PCRE (Perl Compatible Regular Expressions), ki poskuša natančno simulirati funkcionalnost regularnega izraza Perla in ga uporabljajo številna sodobna orodja, vključno s PHP in Apache HTTP strežnikom.

Regijauporaba in uporaba

Danes so regularni izrazi široko podprti v programskih jezikih, programih za obdelavo besedil, naprednih urejevalnikih besedila in nekaterih drugih programih. Podpora za regularne izraze je del standardne knjižnice številnih programskih jezikov, vključno z Java in Python, in je vgrajena v sintakso drugih, vključno s Perl in ECMAScript.
Izvajanje regularnih izrazov se pogosto imenuje mehanizem regularnih izrazov in več knjižnic je na voljo za ponovno uporabo.

Sorodne publikacije