De hovedforskjell mellom vanlig uttrykk og kontekstfri grammatikk er det Vanlige uttrykk bidrar til å beskrive alle strengene i et vanlig språk mens kontekstfri grammatikk bidrar til å definere alle mulige strenger i et kontekstfritt språk.
Grammatikk angir syntaktiske regler for samtale på naturlige språk. Datamusikk bruker i stor grad teorien om formelle språk. I år 1956 ga Noam Chomsky en matematisk modell av grammatikk for å skrive dataspråk. Når det er mulig å utlede et sett med alle strenger fra en grammatikk, sies det at språket er generert fra den grammatikken. To typer grammatikk er vanlig grammatikk og kontekstfri grammatikk. Ethvert språk som kan beskrives med et vanlig uttrykk er et vanlig språk. Kontekstfri grammatikk er en generalisering av vanlig uttrykk. Det er mulig å bruke vanlige uttrykk for å skrive vanlige språk og kontekstfri grammatikk for å skrive kontekstfri grammatikk.
1. Hva er Regular Expression
- Definisjon, eksempler
2. Hva er Context Free Grammar
- Definisjon, eksempler
3. Forholdet mellom vanlig uttrykk og kontekstfri grammatikk
- Oversikt over foreningen
4. Forskjellen mellom vanlig uttrykk og kontekstfri grammatikk
- Sammenligning av nøkkelforskjeller
Regelmessig uttrykk, kontekstfri grammatikk
Den vanlige grammatikken genererer vanlige språk. Denne grammatikken har en enkelt ikke-terminal på venstre side og en høyre side som består av en enkelt terminal eller en terminal, etterfulgt av en enkelt ikke-terminal. Det kan ha en produksjonsregel som følger.
X -> a eller X -> en Y
Hvor X, Y ε N (ikke-terminal) og en ε T (terminal)
Regelmessige uttrykk bidrar til å skrive vanlig grammatikk for å beskrive vanlige språk.
Et vanlig uttrykk representerer et bestemt sett med strenger i algebraisk mote. Noen viktige regler som skal følges når man skriver et vanlig uttrykk, er som følger.
Det vanlige uttrykket for settet 0,1,2 er som følger.
R = 0 + 1 + 2
Settet abb, a, b, bba kan representeres av følgende regulære uttrykk.
R = abb + a + b + bba
Vurder settet, ε, 0, 00, 000, ...
E er den tomme strengen. Den vanlige uttrykket er R = 0 *. Dette representerer lukking av symbolet, inkludert det tomme symbolet.
I settet 1, 11, 111, 1111, ...
Det vanlige uttrykket er R = 1 +. Dette + angir lukning av et symbol utenom det tomme symbolet.
I formell språkteori er Context Free Language (CFL) et språk generert av Context Free Grammar. Fire parametere definerer kontekstfri grammatikk (G).
G = V, Σ, S, P
V: Sett med variabel eller ikke-terminalsymboler.
Σ: Sett med terminalsymboler
S: Start symbol
P: Produksjonsregel
Kontekstfri grammatikk har følgende format for produksjonsregel.
A -> a hvor a = V, Σ * og A ε V
Et eksempel på Context Free Grammar er som følger. Hver produksjon består av et ikke-terminalt symbol og et regulært uttrykk.
For å generere et språk som genererer et like antall a og b er det i formatet anbn. Kontekstfri grammatikk er som følger.
G = (S, A), (a, b), (S -> aAb, A -> aAb | e)
Tatt i betraktning start symbolet,
S -> a A b
Ved å bruke A -> aAb
→ a a A b b
Ved å bruke A -> aAb igjen,
→ a a a A b b b
Ved å bruke A -> ε (Dette symbolet angir en tom streng)
→ a a a b b b
→ a 3 b 3
Når man vurderer produksjonen, er antall a'er lik antall b'er. Den har an bn skjema.
Et vanlig uttrykk er et konsept i formell språkteori som er en sekvens av tegn som definerer et søkemønster. Kontekst Fri grammatikk er en form for formell grammatikk i formell språkteori, som er et sett med produksjonsregler som beskriver alle mulige strenger i et gitt formelt språk.
Regelmessige uttrykk bidrar til å representere bestemte sett med streng på en algebraisk måte. Det bidrar til å representere vanlige språk. Kontekstfri grammatikk bidrar til å definere alle mulige strenger i et kontekstfritt språk.
Et vanlig uttrykk er en metode for mønstermatching. Det er en fleksibel metode for å gi et fleksibelt og kortfattet middel til å matche tekststrenger. Det definerer alle strengene i det vanlige språket. På den annen side tillater kontekstfri grammatikk å definere alle strengene som tilhører et kontekstfritt språk. Forskjellen mellom vanlig uttrykk og kontekstfri grammatikk er at de vanlige uttrykkene bidrar til å beskrive alle strengene i et vanlig språk, mens kontekstfri grammatikk bidrar til å definere alle mulige strenger i et kontekstfritt språk.
1. "Regular Expressions." Www.tutorialspoint.com, Tutorials Point, 8. januar 2018, Tilgjengelig her.
2. "Context-Free Grammar Introduksjon." Www.tutorialspoint.com, Tutorials Point, 8. januar 2018, Tilgjengelig her.
1. "Toolbaricon RegEx" Av M0tty - Eget arbeid (CC BY-SA 4.0) via Commons Wikimedia