Vad är Lexical Analys?

Lexikalisk analys är processen att ta en rad tecken - eller, enklare, text - och omvandla den till meningsfulla grupper som kallas tokens. Denna metod har användningar i en mängd olika applikationer, från tolkning av datorspråk till analys av böcker. Lexikalisk analys är inte synonymt med parsing; snarare är det det första steget i den totala analysen och det skapar råmaterial för senare användning.

Byggstenarna av tokens, även kallad lexema, kan genereras på många sätt beroende på grammatiken som krävs för lexikalisk analys. Ett vanligt exempel på detta är att dela meningar med ord; detta görs ofta genom att dela meningar runt mellanrum. Varje kontinuerlig sträng av tecken som genereras utan mellanslag är ett lexem. Textsträngar kan delas på en eller många typer av tecken, vilket skapar flera versioner av lexema med varierande komplexitet. Tokens genereras efter att varje lexeme har utvärderats och parats med motsvarande värde; per definition refererar tokens till denna parning, inte bara lexemet.

Lexikal analys, något motintuitivt, remsar en textsträng i sitt sammanhang. Syftet är bara att skapa byggstenar för vidare studier, inte att bestämma om dessa delar är giltiga eller ogiltiga. Vid tolkning av datorspråk görs validering genom syntaxanalys, och validering av text kan göras i termer av sammanhang eller innehåll. Om en inmatningssträng är helt uppdelad i lämpliga lexema och var och en av dessa lexema har ett lämpligt värde, anses analysen vara framgångsrik.

Utan kontext eller förmågan att utföra validering kan inte lexikalisk analys pålitligt användas för att hitta fel i input. En lexikal grammatik kan ha felvärden tilldelade specifika lexem, och en sådan analys kan också upptäcka olagliga eller missbildade symboler. Även om att hitta ett olagligt eller felformigt token signalerar ogiltig inmatning, har det ingen betydelse för om de andra tokenna är giltiga, och det är därför inte strikt en typ av validering.

Även om lexikal analys är en integrerad del av många algoritmer, måste den ofta användas i samband med andra metoder för att skapa meningsfulla resultat. Att till exempel dela upp en textsträng i ord för att bestämma frekvenser använder sig av skapandet av lexeme, men skapandet av lexeme enbart kan inte övervaka antalet gånger ett visst lexeme visas i inmatningen. Lexikalisk analys kan vara användbar på egen hand om lexema själva noterar sig, men stora mängder input kan göra analys av råa lexema svåra på grund av datamängden.

ANDRA SPRÅK

Hjälpte den här artikeln dig? Tack för feedbacken Tack för feedbacken

Hur kan vi hjälpa? Hur kan vi hjälpa?