SkÃ¥ne Sjælland Linux User Group - http://www.sslug.dk Forside   Tilmelding   Postarkiv   Forum   Kalender   Søg
MhonArc Dato: [Date Prev] [Kronologisk oversigt] [Date Next]   TrÃ¥d: [Date Prev] [Oversigt trÃ¥de] [Date Next]   MhonArc
 

Re: [PERL] Hvad er forskellen på .*? og .*



M.Schmidt <sslug@sslug> writes:

> Hvad er forskellen på .*? og .*

Hvis der ikke står andet så er forskellen ens.

.* matcher så meget som det er muligt mens .*? matcher så lidt som
overhovedet muligt.

Men med lidt kontekst på så er der en forskel. Lad mig illustrerer det
med en lille konkret opgave: Slet alle attributter til body-tagget i
et html-dokument. Der er nu to muligheder:

  s/<body .*>/<body>/i

Dette vil lave <body bgcolor='black'><h1>Hej</h1></body> om til <body>
fordi .* er grådig og prøver at matche alt det den kan.

  s/<body .*?>/<body>/i

Vil derimod give det forventede <body><h1>Hej</hej></body>. da .*? kun
vil matche op til den første '>'



-- 
Linux lovers hate Windows, BSD lovers like UNIX
  -- Set på OSNews.com


 
Forside   Tilmelding   Postarkiv   Oversigt   Kalender   Søg

 
 
Henvendelse vedrørende websiderne til <www_admin>. Senest ændret 2005-08-10, klokken 19:54
Denne side vedligeholdes af MHonArc .