Minta módosítók

(unknown)

Minta módosítók -- A lehetséges, PCRE reguláris kifejezések kiértékelését befolyásoló módosítók felsorolása

Leírás

Itt látható a pillanatnyilag használható PCRE módosítók listája. A zárójelekben közölt nevek a módosítók PCRE-ben használt belső nevei.

i (PCRE_CASELESS)

Ha ez a módosító be van kapcsolva, akkor a minta a nagy- és kisbetűk különbözőségére érzéketlen, a mintában előforduló betűk mind a kis- mind a nagybetűkre illeszkednek.

m (PCRE_MULTILINE)

Alapértelmezés szerint PCRE úgy tekinti a tárgyszöveget, mintha az egyetlen sorból állna (mégha történetesen tartalmaz is néhány újsor karaktert). A "sor eleje" metakarakter (^) csakis a tárgyszöveg elejére, míg a "sor vége" metakarakter ($) csakis a szöveg végére vagy a lezáró újsor-karakterre engedi illeszteni a mintát - kivéve ha D módosító be van kapcsolva. Ez ugyanúgy működik, mint Perl-ben.

Amikor ez a módosító be van kapcsolva, akkor "sor eleje" illetve "sor vége" szerkezetek közvetlenül a következő illetve közvetlenül a megelőző újsor karakterekre, és a szöveg legelejére illetve legvégére illeszkednek. Ez egyenértékű Perl /m módosítójával. Ha nincs a tárgyszövegben "\n" karakter vagy a mintában nincs ^ illetve $, akkor ennek a módosítónak nincs hatása.

s (PCRE_DOTALL)

Ha ez a módosító be van kapcsolva, a mintában előforduló . metakarakter minden karakterre - beleértve az újsor karaktert is - illeszkedik, míg enélkül az újsor karakterre nem illeszkedne. Ez egyenértékű a Perl /s módosítójával. A tagadó karakterosztályok (mint például [^a]) mindig illeszkednek az újsor karakterre függetlenül ennek a módósítónak a beállításától.

x (PCRE_EXTENDED)

Ha ez a módosító be van kapcsolva, akkor a mintában szereplő térközök - kivéve visszaperjelet elétéve vagy a karakterosztályokon belülieket - nem lesznek részei a mintának, valamint minden karakter, amely karakterosztályon kívüli literális # és a rákövetkező újsorkarakter közé esik, figyelmen kívül hagy a PCRE. Ez egyenértékű a Perl /x módosítójával, ami lehetővé teszi megjegyzések elhelyezését a bonyolultabb mintákban. Megjegyzendő, hogy ez csak bizonyos poziciókra vonatkozik, térközkarakterek soha nem szerepelhetnek speciális karaktersorozatokban, mint például (?( -ban, ami egy feltételes részminta kezdetét jelöli.

e

Ha ez a módosító be van kapcsolva, akkor preg_replace () függvény a helyettesítési paraméterként kapott sztringet - a hivatkozások feloldása után - PHP kódként értelmezi, és ennek a kódnak az eredményét helyettesíti be a keresett szöveg helyére.

Csak a preg_replace() használja ezt a módosítót, a többi PCRE függvény figyelmen kívül hagyja.

Megjegyzés: Ez a módosító PHP3-ban nem használható.

A (PCRE_ANCHORED)

Ha ez a módosító be van kapcsolva, akkor a keresett mintát "lerögzíti", ami annyit jelent, hogy a minta illesztése korlátozva van a tárgyszöveg elejére. Ezt a hatást elérhetjük ha magát a mintát megfelelően alakítjuk ki, miként Perl-ben ennek ez az egyetlen módja.

D (PCRE_DOLLAR_ENDONLY)

Ha ez a módosító be van kapcsolva, akkor dollár metakarakter ($) a mintán belül csak a tárgyszöveg végére illeszkedik. Enélkül a módosító nélkül a $ a legutolsó újsorkarakter előtti pozicióra is illeszkedik, de semmilyen más poziciójú újsorkarakter előtt nem. Ezt a módosítót figyelmen kívül hagyja a PCRE, ha a m be van kapcsolva. Nincs megfelelője Perl-ben.

S

Ha egy mintát többször használunk, akkor érdemes több időt hagyni a kiértékelésére, hogy az illesztésre fordított idő lerövidülhessen. Ennek a módosítónak a bekapcsolásával ezt biztosítjuk. Jelenleg, csak olyan nem "rögzített" minták esetén hasznos, amelyek nem egy egyszerű, rögzített karakterrel kezdődnek.

U (PCRE_UNGREEDY)

Ez a módosító megfordítja a kvantorok (sokszorozók) mohóságát, azaz alapértelmezés szerint nem lesznek mohók, csak ha egy ? követi azokat. Ez nem Perl-kompatibilis. A mintában is beállítható (?U) sorozat megadásával.

X (PCRE_EXTRA)

Ez a módosító PCRE további lehetőségeit teszi elérhetővé, amelyek nem Perl-kompatibilisak. Valamennyi visszaperjel a mintában, amit olyan karakter követ, aminek nincs speciális jelentése, hibát okoz, és ilyenformán lefoglalja ezeket a karakterkombinációkat a jövőbeni kiterjesztések előtt. Alapértelmezés szerint az ilyen különleges jelentés nélküli karakter előtt álló visszaperjelet a Perl betű szerint veszi. Jelenleg nincs más jellegzetesség, amit ez a módosító befolyásolna.

u (PCRE_UTF8)

Ez a módosító is PCRE olyan további lehetőségét teszi elérhetővé, ami nem Perl-kompatibilis. A mintát UTF-8 kódolású szövegnek tekinti. Ez a módosító PHP 4.1.0-től kezdve érhető el.