Skip to main content

Hvad er leksikalsk analyse?

Leksikalanalyse er processen med at tage en række karakterer mdash;Eller mere enkelt tekst mdash;og omdanne det til meningsfulde grupper kaldet tokens.Denne metode har anvendelser i en lang række applikationer, fra at fortolke computersprog til analyse af bøger.Leksikalsk analyse er ikke synonym med parsing;Det er snarere det første trin i den samlede parsingproces, og det skaber råmateriale til senere brug.

byggestenene til tokens, også kaldet lexemes, kan genereres på mange måder, afhængigt af den grammatik, der kræves til leksikalsk analyse.Et almindeligt eksempel på dette er splittende sætninger ved ord;Dette gøres ofte ved at opdele sætninger omkring rum.Hver kontinuerlig streng af tegn genereret uden rum er et lexeme.Tekststrenge kan opdeles på en eller mange typer karakterer, hvilket skaber flere versioner af lexemes med varierende kompleksitet.Tokens genereres, efter at hvert lexeme er blevet evalueret og parret med dens tilsvarende værdi;Per definition henviser tokens til denne parring, ikke kun lexeme.

Leksikalsk analyse, noget modintuitivt, striber en tekststreng i dens kontekst.Dets formål er kun at generere byggesten til videre undersøgelse, ikke at afgøre, om disse stykker er gyldige eller ugyldige.I tilfælde af computersprogstolkning udføres validering ved syntaksanalyse, og validering af tekst kan udføres med hensyn til kontekst eller indhold.Hvis en inputstreng er fuldstændigt opdelt i passende lexemes, og hver af disse lexemes har en passende værdi, betragtes analysen som succes..En leksikalsk grammatik kan have fejlværdier, der er tildelt specifikke lexemer, og en sådan analyse kan også registrere ulovlige eller misdannede tokens.Selvom det at finde et ulovligt eller misdannet token signalerer ugyldigt input, har det ingen betydning for, om de andre tokens er gyldige, og det er derfor ikke strengt en type validering.

Selvom leksikalsk analyse er en integreret del af mange algoritmer, skal detbruges ofte i forbindelse med andre metoder til at skabe meningsfulde resultater.For eksempel gør det at opdele en tekststreng i ord for at bestemme frekvenser, der bruger lexeme -skabelse, men skabelse af Lexeme alene kan ikke overvåge antallet af gange, et bestemt lexeme vises i input.Lexical analyse kan være nyttig på egen hånd, hvis selve lexemerne er bemærkelsesværdige, men store mængder input kan gøre analyse af rå lexemer vanskelige på grund af datavolumen.