Skip to main content

Wat is lexicale analyse?

Lexicale analyse is het proces van het nemen van een reeks tekens mdash;Of, eenvoudiger, tekst mdash;en het omzetten in betekenisvolle groepen die tokens worden genoemd.Deze methodologie gebruikt in een breed scala aan toepassingen, van het interpreteren van computertalen tot analyse van boeken.Lexicale analyse is niet synoniem voor parsing;Het is eerder de eerste stap van het totale parsingproces en het creëert grondstof voor later gebruik.

De bouwstenen van tokens, ook wel lexemen genoemd, kunnen op veel manieren worden gegenereerd, afhankelijk van de grammatica die nodig is voor lexicale analyse.Een veel voorkomend voorbeeld hiervan is het splitsen van zinnen met woorden;Dit wordt vaak gedaan door zinnen rond spaties te splitsen.Elke continue reeks tekens die zonder spaties worden gegenereerd, is een lexeme.Tekstreeksen kunnen worden gesplitst op een of vele soorten tekens, waardoor meerdere versies van lexemen met verschillende complexiteit worden gemaakt.Tokens worden gegenereerd nadat elk lexeme is geëvalueerd en gekoppeld aan de overeenkomstige waarde;Per definitie verwijzen tokens naar deze combinatie, niet alleen de lexeme.

Lexicale analyse, enigszins contra-intuïtief, stript een tekstreeks van zijn context.Het doel is alleen om bouwstenen te genereren voor verder onderzoek, niet om te bepalen of die stukken geldig of ongeldig zijn.In het geval van computertaalinterpretatie wordt validatie uitgevoerd door syntaxisanalyse en kan validatie van tekst worden gedaan in termen van context of inhoud.Als een invoerreeks volledig is onderverdeeld in geschikte lexemen en elk van die lexemen een geschikte waarde heeft, wordt de analyse als succesvol beschouwd.

zonder context of de mogelijkheid om validatie uit te voeren, kan lexicale analyse niet betrouwbaar worden gebruikt om fouten in input te vinden.Een lexicale grammatica kan foutwaarden hebben die aan specifieke lexemen worden toegewezen, en een dergelijke analyse kan ook illegale of misvormde tokens detecteren.Hoewel het vinden van een illegaal of misvormd token wel een ongeldige invoer aangeeft, heeft het geen invloed op de vraag of de andere tokens geldig zijn, en dus is het niet strikt een soort validatie.

Hoewel lexicale analyse een integraal onderdeel is van veel algoritmen, moet het danworden vaak gebruikt in combinatie met andere methoden om zinvolle resultaten te creëren.Bijvoorbeeld, het splitsen van een tekstreeks in woorden om te bepalen frequenties maakt gebruik van het maken van lexeme, maar het maken van Lexeme kan alleen het aantal keren dat een bepaald lexeme in invoer verschijnt, niet bewaakt.Lexicale analyse kan op zichzelf nuttig zijn als de lexemes zelf opmerkelijk zijn, maar grote hoeveelheden invoer kunnen analyse van ruwe lexemen moeilijk maken vanwege de gegevensvolume.