..


Sponsorētās saites

Regulāras izteiksmes Pārrakstīšana ISAPI filtrs

Pants raksta Max Bossi
Lapa 1 no 3

In Iepriekšējā rakstā mans draugs un kolēģis Luca Ruggiero mēs redzējām, kā sākt darbu ar ISAPI filtrs URL Pārrakstīšanu uz ​​IIS.

Šis raksts stāv kā sava veida turpinājums ceļu jau sākusies un tā mērķis ir paskaidrot mazliet "teoriju, lai ļautu jums rakstīt instrukcijas par Pārrakstīšanu arvien sarežģītākām un saistāma ar atbalstu regulāras izteiksmes.

Speciālās rakstzīmes

Mēs sākam, redzot cd. īpašas rakstu zīmes, zīmes, kas ir īpaša nozīme attiecībā uz to klasisko vērtību tekstu:

Raksturs Nozīmē
. Jebkuru rakstzīmi
* Nulle vai vairāk atkārtojumiem rakstzīmi pa kreisi
+ Viens vai vairāki atkārto no rakstzīmi pa kreisi
? Rakstzīmi pa kreisi var būt klāt vai ne
| Izvēle starp to, kas ir labi un pa kreisi
^ Top of the line vai simbols atteikumu, ja izmanto rakstzīmju kopu
$ Rindas beigas
(S) Tos izmanto, lai izveidotu apakšgrupas izteicienus, kā arī identificēt mainīgais, kas tiks uzaicināti ar N $
{Un} Tos izmanto, lai norādītu minimālo un maksimālo garumu string pa kreisi
[Un] Tā satur rakstzīmju kopu

Daži piemēri, lai labāk izprastu nozīme šādai speciālās rakstzīmes.
 



 .

 
Nozīmē jebkuru rakstzīmi, un tāpēc piekrīt (uno!) jebkuru rakstzīmi.
 



 .*

 
Izteiksme Iepriekš vienmēr ir pārbaudīta, jo tā pieņem tukša virkne ir jebkura virkne, jo mūsu simboliku ietver atkārtot uz nenoteiktu laiku (no nulles līdz bezgalībai) jebkuras rakstzīmes.
 



 * Ab

 
Šī izteiksme ir pārbaudīts ar šādiem rezultātiem: "a", "ab", "ABB", "abbb", "abbbb ",...
 



 ab +

 
Notiek ar "ab", "ABB", "abbb ",... bet ne ar "a"!
 



 ab?

 
Notiek ar "a" vai "ab".
 



 ab {2,4}

 
Notiek ar "ABB", "abbb", "abbbb".
 



 ^ * A.

 
Notiek ar jebkuru rakstzīmju virkni, kas sākas ar burtu "a"
 



 Z $ .*

 
Notiek ar jebkuru rakstzīmju virkni, kas beidzas ar burtu "Z"
 



 ^ C * $

 
Notiek ar jebkuru rakstzīmju virkni, kas sākas ar "c" un beidzas ar burtu "a". Piemēram: "māja", "grāmatā", "līme", utt.
 



 abc | def

 
Notiek ar "abc" vai "def"
 



 (b | c)

 
Notiek ar "ab" vai ar "ac". Lai to sasniegtu, mēs izmantojām pāris iekavas, lai izveidotu apakšgrupas izteiksmes pārdomas, jo mūsu piemēram, izvēli starp "b" un "c"
 



 [Az]

 
Ar izmantot kvadrātiekavās mēs esam radījuši rakstzīmju kopu. Mūsu piemērā mums ir sniegusi dažādus rakstzīmes, sākot no "" uz "z", un pēc tam aptver visu alfabētu.
Ņemiet vērā, ka "z" lietošana nav vienāds ar "AZ", kas pirmajā gadījumā, kā jūs, tiks atrasti tikai maziem burtiem pēdējā tikai ar lietu.
 



 [A-zA-Z]

 
Izteiksme iepriekš, tomēr, mums rāda, kā pieņemt visas rakstzīmes no tām ir lietas nejūtīga.
 



 [0-9]

 
Šis termins ietver jebkuru skaitli no 0 līdz 9.

 



 [^ 0-9]

 
Šis termins ietver jebkuru rakstzīmi, izņemot numurus. Mēs panācām šo, izmantojot noliegšanu, sākumā mūsu noteikt, speciālās rakstzīmes ^.

Acīmredzot, formulēšanā un dažādus iepriekš minētajam piemēram, jūs ievērosiet, ka ir iespējams paredzēt gandrīz bezgalīgs skaits iespējas.

Visbeidzot, protams, mums ir jāņem vērā iespēja, ka zīmes redzējām iepriekš, mēs varam kalpot to klasisko vērtību, ti tik vienkārši rakstzīmes. Šajā gadījumā mēs izmantot glābšanās raksturs (\), pirms speciālās rakstzīmes mēs vēlamies izmantot kā vienotu raksturu.
Kā piemēru varam redzēt, kā rakstīt, kā esepressione, virkne "page.html". Kā mēs zinām punkts ir īpašs raksturs un tādējādi izmantot kā vienkāršu point mums darīt:

 



 lpp \. html

 
Ņemiet vērā, protams, ka tas pats glābšanās raksturs, savukārt, speciālo rakstzīmi, un tādēļ, ja jūs vēlaties izmantot to kopējā burtiskā vērtību, mums ir jāizmanto dubultās izņēmuma kodu:
 



 \ \

 

Šajā pašā kategorijā ...
E-Learning
ASP (Advanced) ASP (Advanced)
Pilns kurss, lai radītu dinamisku tīmekļa vietnes. Sākot no € 39.
ASP Zero (Ebook) ASP Zero (Ebook)
Microsoft ASP un VBScript mācīties no nulles. Pēc 29 tikai €.
ASP.NET (Kurss) ASP.NET (Kurss)
Pilns kurss būvniecībai Web pieteikumus no 49 €.
Sponsorētās saites