Martin Norbäck wrote:
>
> 2001-08-21 22:15:35+0200, "Jan D." <jan.djarv@mbox200.swipnet.se> ->
> > Martin Norbäck wrote:
> > >
> > > 2001-08-21 12:29:06+0200, Martin Sj|gren <md9ms@mdstud.chalmers.se> ->
> > > > När man pratar om "regular expressions" i matematik och datavetenskap
> > > > heter det "reguljära uttryck" på svenska. Nu är ju inte posix-regex ett
> > > > reguljärt språk utan ett deterministiskt kontextfritt språk, närmare
> > > > bestämt ett LR(1)-språk tror jag.
> > >
> > > Det tror jag inte. Vilken konstruktion i posix regex skulle göra så att
> > > språket inte längre är ett reguljärt uttryck?
> > >
> > > LR(1) är det ju inte för du kan ju till exempel inte matcha godtyckligt
> > > nästade parenteser i posix regex, vilket man kan i LR(1).
> >
> > Gör inte bakåtreferenser att det blir mer än reguljära uttryck, d.v.s.:
> >
> > /(a)+bbb\1/ matchar exempelvis endast lika många a:n före bbb som efter.
>
> Tja, bortsett från att + ska vara innanför parenteserna för att komma
> med så stämmer det.
>
> Visste inte ens att sådana var tillåtna. Måste vara skitsvårt att göra
> en effektiv implementation av såna där.
>
> Ett misstag av standardiseringskommittén att införa sådana troligen.
De finns de som håller med dig, från mansidan:
Back references are a dreadful botch, posing major prob
lems for efficient implementations. They are also some
what vaguely defined (does `a\(\(b\)*\2\)*d' match
`abbbd'?). Avoid using them.
Jan D.
Arkiv genererat av hypermail 2.1.1.