Php horgonyok

Alapértelmezés szerint a karakterosztályon kívül a metacharacter (^) string kezdete megegyezik a feldolgozás alatt álló adatok kezdetével (hacsak nem alkalmaznak módosítókat). A karakterosztályon belül (^) teljesen más jelentése van.

A sztring kezdeti karaktere (^) nem kell a sablon első karaktere, ha a sablonban több alternatívát használunk, de minden olyan alternatíva első karakterének kell lennie, amelyben a sablon a megfelelő ághoz illeszkedik. Ha minden alternatíva a vonal metacharacter (^) elejével kezdődik, akkor a minta csak a sor elejére illeszkedik, mondjuk, hogy a sablon "horgonyzott". (A sablon más "rögzítésére" is van).

A vonal metacharacter vége (dollárjel, $) a vonal végén csak a sor végén vagy éppen az utolsó karakter előtt érhető el, ha soros szünet van (ha nincsenek módosítók megadva). A vonalvégi metakarakter ($) nem feltétlenül a minta utolsó karaktere, ha több alternatívát használunk, de az alternatív alternatívák utolsó karakterének kell lennie. A karakterosztályon belül a karakter # '$ #' nincs különösebb jelentéssel.

A line-end metacharacter viselkedése a PCRE_DOLLAR_ENDONLY módosító segítségével megváltoztatható úgy, hogy csak a string végére illeszkedik. Ez a zászló nem a \ Z.

A karakterlánc kezdetének és végének metakarakterjei módosulnak, ha a PCRE_MULTILINE módosítót használják. Ebben az esetben a vonal elején vagy végén található mérkőzések mellett a metakaraktereket is # '^ #' és # '$ #' illeszkedik az új sor karakter után \ n ". Például, a pattern / ^ abc $ / a "def \ nabc" karakterláncban többsoros üzemmódban fordul elő, és nem fordul elő normál módban. Így egy vonalas üzemmódban "lehorgonyzott" sablont, amelynek minden ágát "^" -al kezdjük, többsoros üzemmódban nem lesz "kötve". A módosítót PCRE_DOLLAR_ENDONLY figyelmen kívül hagyja, ha a módosítót PCRE_MULTILINE értékre állítja.

Megjegyzendő, hogy az \ A, \ Z és \ z szolgáltatásszekvenciák mindkét üzemmódban egy vonal kezdetéhez vagy végéhez illeszthetők. Ha a sablon minden ágát \ A-val kezdjük, akkor a sablon "lehorgonyozva" lesz a PCRE_MULTILINE módosító jelenlététől függetlenül.

User Contributed Notes 1 megjegyzés

Kapcsolódó cikkek