..
En un article anterior del meu amic i col.lega Luca Ruggiero hem vist com començar a treballar amb el filtre ISAPI per reescriure els URL de IIS.
En aquest article es presenta com una mena de continuació del camí ja es va iniciar i té com a objectiu explicar una mica de teoria per tal de permetre que vostè escrigui les instruccions per tornar a escriure cada vegada més complexa i articulada amb el suport de les expressions regulars.
Els caràcters especials
Comencem veient el cd. caràcters especials, és a dir, aquells personatges que tenen un significat especial en relació amb el seu valor de text clàssic:
| Caràcter | Significat |
| . | Qualsevol caràcter |
| * | Zero o més repeticions del caràcter a l'esquerra |
| + | Una o més repeticions del caràcter a l'esquerra |
| ? | El caràcter de l'esquerra pot estar present o no |
| | | Possibilitat de triar entre el que és dreta i l'esquerra |
| ^ | Superior de la línia o el símbol de la negació si s'utilitza dins d'un conjunt de caràcters |
| $ | Final de la línia |
| (E) | Que s'utilitzen per crear les expressions sub-, o per identificar la variable que després es dirà amb $ N |
| {I} | S'utilitzen per a indicar la longitud mínima i màxima de la cadena a l'esquerra |
| [I] | Conté un conjunt de caràcters |
.Significa qualsevol caràcter, per la qual cosa accepta una (uno!) qualsevol caràcter.
.*L'expressió anterior es verifica sempre, ja que accepta una cadena buida és una cadena, ja que el nostre simbologia inclou una repetició indefinida (de zero a infinit) de caràcters.
ab *Aquesta expressió es prova amb els següents resultats: "a", "ab", "ABB", "abbb", "abbbb ",...
ab +Passa amb "ab", "ABB", "abbb ",... però no amb "a"!
ab?Passa amb la "a" o "ab".
{Ab} 02/04
Passa amb "abb", "abbb", "abbbb".
^ A. *Passa amb qualsevol cadena que comença amb la lletra "a"
.* Z $Passa amb qualsevol cadena que acaba amb la lletra "z"
^ C * a $Passa amb qualsevol cadena que comença amb "c" i acaba amb la lletra "a". Per exemple: "casa", "Paper", "cola", etc.
abc | defPassa amb "abc" o amb "def"
a (b | c)Passa amb "b" o amb "ac". Per aconseguir això es va utilitzar un parell de parèntesis per a crear una sub-expressió en la contemplació, en el nostre exemple, l'elecció entre "b" i "c"
[Az]Amb l'ús de claudàtors, hem creat un conjunt de caràcters. En el nostre exemple, hem proporcionat una sèrie de personatges que van des de la "a" a la "z" i després abraça tot l'alfabet.
[A-Za-z]L'expressió anterior, però, ens mostra com a acceptar tots aquests caràcters de l'alfabet són majúscules i minúscules.
[0-9]Aquesta expressió inclou qualsevol nombre entre 0 i 9.
[^ 0-9]Aquesta expressió inclou qualsevol caràcter excepte els números. Vam fer això mitjançant l'ús de la negació, al començament del nostre conjunt, el ^ caràcter especial.
Òbviament, l'organització i la combinació de diversos l'exemple anterior es donarà compte de que és possible predir un nombre gairebé infinit de possibilitats.
Finalment, per descomptat, hem de considerar la possibilitat que els personatges vistos anteriorment ens pot servir en el seu valor clàssic, és a dir, com a mers personatges.
En aquest cas fem ús del caràcter d'escapament (\) davant del caràcter especial que voleu utilitzar com un caràcter comú.
Per exemple, podem veure la forma d'escriure, en forma de esepressione, la cadena "pàgina.html".
Com sabem, el punt és un caràcter especial i, per tant, fàcil d'usar com un punt que hem de fer el següent:
Pàgina \. HtmlTingueu en compte, per descomptat, que el mateix caràcter d'escapament és, al seu torn, un caràcter especial i per tant, si voleu utilitzar en el seu valor literal comú, hem de recórrer a una fuita doble:
\ \
| |
ASP (Advanced)
Cicle complet per a la creació de llocs web dinàmics. A partir de 39 €. |
| |
ASP Zero (ebook)
Aprenentatge de Microsoft ASP i VBScript des de zero. Amb només 29 €. |
| |
ASP.NET (Curs)
Curs complet per construir aplicacions web a partir de 49 €. |