..


Sponsorerede links

Regulært udtryk for ISAPI Rewrite Filter

Artikel skrevet af Max Bossi
Side 1 af 3

I en tidligere artikel af min ven og kollega, Luca Ruggiero vi så, hvordan man begynde at arbejde med ISAPI-filter til at omskrive webadresser på IIS.

Denne artikel står som en slags fortsættelse af stien allerede begyndt og har til formål at forklare en lille "teori for at give dig mulighed for at skrive vejledning til omskrivning stadig mere komplekse og kombineres med støtte fra regulære udtryk.

Specialtegn

Vi begynder med at se cd. specialtegn, dvs tegn, der har speciel betydning i forhold til deres klassiske værdi tekst:

Tegn Betydning
. Alle tegn
* Nul eller flere gentagelser af tegnet til venstre
+ En eller flere gentagelser af tegnet til venstre
? Tegnet til venstre kan være til stede eller ej
| Valg mellem, hvad der er højre og venstre
^ Toppen af ​​den linje eller symbolet for benægtelse, hvis de anvendes inden for et sæt tegn
$ Slutningen af ​​linjen
(E) De bruges til at oprette sub-udtryk, eller til at identificere den variabel, der vil derefter blive kaldt med $ N
{Og} De bruges til at angive den minimale og maksimale længde af strengen til venstre
[Og] Den indeholder et sæt tegn

Et par eksempler for bedre at forstå betydningen af ​​disse specialtegn.
 



 .

 
Enhver karakter og derfor accepterer en (uno!) enhver karakter.
 



 .*

 
Ovenstående udtryk er altid verificeres, fordi det accepterer en tom streng er en streng, som vores symbologi indeholder en gentagelse på ubestemt tid (fra nul til uendelig) af ethvert tegn.
 



 AB *

 
Dette udtryk er testet med følgende resultater: "a", "AB", "abb", "abbb", "abbbb ",...
 



 AB +

 
Optræder med "AB", "ABB", "abbb ",... men ikke med "en"!
 



 AB?

 
Optræder med "en" eller "AB".
 



 {AB} 2,4

 
Optræder med "abb", "abbb", "abbbb".
 



 ^ A. *

 
Optræder med enhver streng, der begynder med bogstavet "a"
 



 .* Z $

 
Optræder med enhver streng, der slutter med bogstavet "z"
 



 ^ C * et $

 
Optræder med enhver streng, der begynder med "c" og slutter med bogstavet "a". For eksempel: "hjem", "Paper", "lim", osv..
 



 abc | def

 
Optræder med "abc" eller med "def"
 



 A (b | c)

 
Optræder med "AB" eller med "AC". For at opnå dette brugte vi et par af parenteser til at skabe en sub-udtryk i kontemplation, i vores eksempel, valget mellem "b" og "c"
 



 [Az]

 
Med brugen af ​​kantede parenteser har vi skabt et sæt tegn. I vores eksempel har vi leveret en række figurer fra "A" til "z" og derefter omfavner hele alfabetet.
Bemærk, at brugen af ​​"z" ikke er lig med "Z" som i det første tilfælde vil vi matche kun små bogstaver i det sidste kun med sagen.
 



 [A-zA-Z]

 
Udtrykket ovenfor, dog viser os, hvordan at acceptere alle disse alfabet tegn er store og små bogstaver.
 



 [0-9]

 
Dette udtryk omfatter alle tal mellem 0 og 9.

 



 [^ 0-9]

 
Dette udtryk omfatter alle tegn undtagen tal. Vi gjorde dette ved hjælp af benægtelse, i begyndelsen af ​​vores sæt, specialtegnet ^.

Selvfølgelig vil arrangere og kombinere de forskellige ovenstående eksempel du bemærker, at det er muligt at forudsige en næsten uendelig række af muligheder.

Endelig, naturligvis, må vi overveje muligheden for, at de tegn, set ovenstående kan vi tjene i deres klassiske værdi, dvs som rene tegn. I dette tilfælde har vi at gøre brug af escape-tegn (\) før særlige karakter, at vi ønsker at bruge som en fælles karakter.
For eksempel kan vi se, hvordan man skriver, i form af esepressione, strengen "side.html". Som vi ved det punkt er en særlig karakter og derfor nemt at bruge som et punkt, vi er nødt til at gøre dette:

 



 side \. html

 
Bemærk, selvfølgelig, at den samme escape-tegnet er til gengæld en særlig karakter og derfor, hvis du ønsker at bruge den i sin bogstavelige fælles værdi, må vi gøre brug af en dobbelt-escape:
 



 \ \

 

I den samme kategori ...
E-Learning
ASP (Advanced) ASP (Advanced)
Fuld kursus for at skabe dynamiske web-sites. Fra 39 €.
ASP Zero (Ebook) ASP Zero (Ebook)
Læring Microsoft ASP og VBScript fra bunden. På kun 29 €.
ASP.NET (Kursus) ASP.NET (Kursus)
Fuld kursus for bygge web-applikationer fra 49 €.
Sponsorerede links