PHP: regularni izrazi, preg ustrezajo vsem funkcijam

PHP, kot v primeru sodobnega programskega jezika, ponuja razvijalcu nabor funkcij za uporabo regularnih izrazov. Vnos vrstic v drugih vrsticah lahko poiščete po kompleksnih kriterijih.

HTML, CSS, XML in druge formalizirane datoteke so klasične naloge za uporabo funkcije preg match all. Nič manj vpliva na iskanje naslovov, priimkov, telefonskih številk, e-pošte in drugih informacij v neformalnih besedilih.

Format funkcij

PHP ponuja dve iskalni funkciji: preg match in preg match all. Prvi pogleda prvi pojav vzorca v vrstici, drugi pa vse pojavitve. Včasih se uporablja izraz "naključje vzorca". V prvem primeru je rezultat funkcije "niz je enak predlogu," v drugem primeru, "najdeni nizi ustrezajo vzorcu". Formalno, izraz "naključje" natančneje odraža bistvo, vendar je naravni kontekst operacije običajno "iskanje" informacij. V praksi se zahtevata tako ena kot druga. Spodaj je oblika funkcije.


Rezultat funkcije - število, število zadetkov. Vse najdene zadetke se zapišejo v ujemajočih se nizih. V primeru, da se preg ujema z vsemi, lahko podate vrstni red razvrstitve:
  • PREG_PATTERN_ORDER;
  • PREG_SET_ORDER.
  • Razvrščanje v prvi različici skupine je rezultat iskanja po številki regularnega izraza (privzeta vrednost). V drugem primeru se rezultati razvrstijo glede na njihovo lokacijo v vrstici.

    Predloga simbola - elementa

    Pomembno je vedeti, da vzorec deluje z znaki. Programiranje je že dolgo pozabilo, kakšen je "simbol" podatkov. Sodobni jeziki ne padajoPod izrazom "niz", vendar glede na predlogo moramo razumeti: tukaj so manipulirani s simboli.


    Konstrukcija predloge je najprej navedba želenega zaporedja znakov. Če je jasno, da v predlogi ne bo nobenih napak. Vsekakor pa bo veliko manjša.
  • a - to je poseben element predloge - simbol.
  • a-z je element predloge, tudi en znak, vendar le z vrednostjo od a do z - celotno latinico v malih črkah.
  • 0-9 je ena števka, s katero koli, vendar je 1-3 samo 1 2 ali 3.
  • Register v predlogi je pomemben. Prvi in ​​zadnji znak predloga sta zelo pomembni. Določite lahko, kje se začne predloga in kaj se konča.

    Predloga za elemente

    PHP preg tekmo vse uporablja standardno skladnjo regularnih izrazov. V oglatih oklepajih je eden od znakov v njih:
  • [abc] samo znaki a, b, c.
  • [^ ABC] vse razen znakov A, B, C.
  • w in W - besedilo ali ne besedilni znak.
  • s in S je presledek ali ne-prost znak.
  • d in D sta števki ali ne.
  • Simboli ponavljanja so predstavljeni z zavitimi oklepaji - {n, m} in se nanašajo na prejšnji znak.
  • n pomeni ponovitev "nič manj";
  • m je ponovitev "nič več".
  • Sintaksa ponuja veliko možnosti za ustvarjanje predlog, vendar je najbolje, da začnemo z osnovami, to je od preprostih, samo-napisanih, v katerih so kompleksni elementi in kombinacije odsotni. Preprosto povedano, navedite prave znake, ki jih potrebujete, z navedbo potrebnih številk in upoštevajoč, da simbol "^" ustreza začetku, in "$" - konec vrstice, lahkoustvarite preproste predloge. Z analizo resnično urejenih izrazov iz kvalificiranih strokovnjakov, lahko pridobite trdno znanje za ustvarjanje prefinjenega preg ujemanja vseh aplikacij. Arsenal PHP ni omejen le na ti dve funkciji, vendar se najpogosteje uporabljata.

    Enostavna praksa

    Predloga za celo število:
  • "/[0-9] * /"
  • Tudi predlogi za celo število, vendar je lahko spredaj znak ("+", "-") ), in obstajajo nepotrebne vrzeli spredaj /zadaj:
  • /^ [s | + | -] {01} [0-9] * /
  • Podobno:
  • /^ [s | + | -] {01} [0-9] * (.) [0-9] * /- številka s piko.
  • /[0-9a-z_-]+@[0-9a-z_^.]+.[a-z]{23}/- Možnost prepoznavanja e-pošte.
  • Uporaba predlog za preg se ujema z vsemi, njihovi primeri na internetu, analiza kodnih strani spletnih mest in drugi viri omogočajo ustvarjanje lastne knjižnice predlog.
    Variante za iskanje informacij so lahko številne. Zlasti zadnja dva konstrukta sta lahko različno modelirana. V mnogih primerih bo imel prednost predlogo, ki bo hitro in natančno zagotovila pravo naključje. Uporaba PHP preg ustreza vsem, kot tudi podobnim funkcijam v drugih jezikih, zahteva prakso, pozornost in pred-validacijo predlog.

    Sorodne publikacije