..


Link-uri sponsorizate

Expresie regulată pentru filtru ISAPI Rescrieţi

Articol scris de Max Bossi
Pagina 1 din 3

Intr-un articol anterior de prietenul şi colegul meu Luca Ruggiero am vazut cum să începeţi să lucraţi cu filtru ISAPI, pentru a rescrie URL-urile pe IIS.

Acest articol reprezintă un fel de continuare a deja calea de început şi îşi propune să explice teoria un pic ", cu scopul de a vă permite să scrie instrucţiuni pentru rescrierea ce în ce mai complexe şi articulate, cu sprijinul de expresii regulate.

Caractere speciale

Vom începe prin a vedea cd-ul. caractere speciale, adică acele caractere care au un înţeles special în raport cu valoarea lor de text clasic:

Caracter Semnificaţie
. Orice caracter
* Zero sau mai multe repetari a caracter la stânga
+ Una sau mai multe repetari a caracterului la stânga
? Caracter la stânga pot fi prezente sau nu
| Alegerea între ceea ce este dreapta si in stanga
^ Partea de sus a liniei sau simbolul de negare dacă sunt utilizate în termen de un set de caractere
$ Sfârşitul de linie
(E) Acestea sunt utilizate pentru a crea sub-expresii, sau pentru a identifica variabila care va fi numit pe atunci cu $ N
{Şi} Ele sunt folosite pentru a indica lungimea minimă şi maximă a şirului spre stânga
[Şi] Aceasta conţine un set de caractere

Câteva exemple pentru a înţelege mai bine semnificaţia acestor caractere speciale.
 



 .

 
Înseamnă orice caracter şi acceptă, prin urmare, (uno!) orice caracter.
 



 .*

 
Expresia de mai sus este întotdeauna verificată, pentru că acceptă un şir gol este orice şir, astfel cum a simbolicii noastre include o repeta pe termen nedefinit (de la zero la infinit) din orice caractere.
 



 AB *

 
Această expresie este testat cu urmatoarele rezultate: "o", "ab", "ABB", "abbb" "abbbb ",...
 



 ab +

 
Apare cu "ab" ", ABB", "abbb ",... dar nu cu "o"!
 



 ab?

 
Apare cu "o" sau "pop".
 



 {AB} 2.4

 
Apare cu "ABB", "abbb", "abbbb".
 



 ^ A. *

 
Apare cu orice şir care începe cu litera "a"
 



 .* Z $

 
Apare cu orice şir care se termină cu litera "Z"
 



 ^ C * un $

 
Apare cu orice şir care începe cu "c" şi se termină cu litera "A". De exemplu: "acasă", "Cartea", "lipici", etc.
 



 abc | def

 
Apare cu "abc" sau cu "def"
 



 a (b | c)

 
Apare cu "ab" sau cu "ac". Pentru a realiza acest lucru am folosit o pereche de paranteze pentru a crea o expresie sub-în contemplare, în exemplul nostru, alegerea între "b" şi "c"
 



 [Az]

 
Cu utilizarea de paranteze drepte am creat un set de caractere. În exemplul nostru am furnizat o serie de personaje, de la "A" prin intermediul "z" şi îmbrăţişează, apoi alfabetul întreg.
Reţineţi că utilizarea de "Z" nu este egal cu "Z", ca şi în primul caz, vom potrivi doar litere mici în aceasta din urmă doar cu caz.
 



 [A-zA-Z]

 
Expresia de mai sus, cu toate acestea, ne arată cum să accepte toate aceste personaje alfabet sunt case-insensitive.
 



 [0-9]

 
Această expresie include orice număr între 0 şi 9.

 



 [^ 0-9]

 
Această expresie include orice caracter, cu excepţia numere. Am făcut acest lucru prin utilizarea negare, la începutul setului nostru, ^ caracter special.

Evident, aranjarea şi combinarea diferitelor exemplul de mai sus, veţi observa că este posibil să se prevadă un număr aproape infinit de posibilităţi.

În cele din urmă, desigur, noi trebuie să ia în considerare posibilitatea ca personajele sa văzut mai sus, putem sluji în valoarea lor clasice, şi anume ca personaje simple. În acest caz, vom face uz de caracterul escape (\) înainte de caracterul special pe care dorim să o utilizaţi ca un caracter comun.
De exemplu, vom vedea cum se scrie, sub formă de esepressione, şirul "pagină.html". După cum ştim punct este un caracter special şi, prin urmare, uşor de utilizat ca un punct de ce trebuie să facem acest lucru:

 



 pagina \. html

 
Notă, desigur, că personajul este acelaşi de evacuare, la rândul său, un caracter special şi, prin urmare, dacă doriţi să-l folosească în comun valoarea sa literala, trebuie să avem recurgă la o evadare dublu:
 



 \ \

 

În aceeaşi categorie ...
E-Learning
ASP (avansat) ASP (avansat)
Ciclu complet pentru crearea de site-uri Web dinamice. De la 39 €.
ASP Zero (Ebook) ASP Zero (Ebook)
Microsoft Learning ASP şi VBScript de la zero. La doar 29 €.
ASP.NET (Curs) ASP.NET (Curs)
Ciclu complet pentru construirea de aplicatii Web de la 49 €.
Link-uri sponsorizate