SzámítógépekProgramozás

A reguláris kifejezés (PHP). PHP: reguláris kifejezések példák

Mekkora és változatos információs világ, ugyanolyan gyorsan kifejlődik és fejlődik. Bármilyen döntés - csak egy pont a teljes folyamat a mozgás. A tudás és tapasztalat lehetővé teszi, hogy megértsék a folyamat a cél elérésére, de soha - nem az eredmény az elért eredményeket. Kétséges, hogy beszélhetünk a belátható jövőben az eredményt, de fontos, hogy a folyamat a törekvés, hogy egy jelentős és objektíven szükséges folyamatot.

„Vágy és / vagy egy csomó pénzt” nem hoz létre egy olyan algoritmus, amely képes arra, hogy, és persze a „szabad” ember tesz, különösen akkor, ha nem hiszi, hogy mit csinál. Minden helyzetben információs probléma van legalább egy holttér, de neki, általában azonnal, mások tiszta foltok láthatók, és nem feltétlenül, hogy ezek mind fehér virágok.

Internet technológia egyszerűsített információhoz való hozzáférés, de a kérdés az -, hogyan kell fektetni, amelyek a kívánt - nem egyszerűsödött, és a megszerzett új „volume” a munka. És bár PHP reguláris kifejezés különbség egyértelműen nem merítik ki, ez jelentős előrelépés.

Egyszerű funkciók + algoritmus = minta

Mint a reguláris kifejezések, PHP algoritmus jelentősen csökkenti a tartalmat, de a szokásos keresési funkciók / csere és algoritmusok talált nem veszítették el jelentőségét. Új ötletek nem vetítheti az információs forradalom. A legtöbb, amit lehet számítani - kompakt kódot, és növeli a fejlesztő képes megfogalmazni keresésnek megfelelő.

Meg kell ismernie és alkalmaznia, PHP reguláris kifejezések. Példák meggyőző és hatékony. De meg kell adni a jelentés, hogy az Advent egy új keresőmotor, a súlypont áttevődött a minta - egyfajta mechanizmus, bár tény, helyébe egy sor egyszerű keresési funkciók, feltételek, hurkok, és más piaci szereplők.

van:

  • minőség és a modern eszköz - jó;
  • látni és használni a tapasztalat a kollégák az ügyet;
  • ötvözi a valóság és a virtuális ötlet - garantálja a sikert.

Elérése ismerete, hogy milyen volt szükség, hogy megértsük a problémát, megoldani, gyakran fontosabb, mint a konkrét eredmény.

Szabályos kifejezések a PHP által képviselt számos funkciót a nyelv szintaktikai és sok hasznos példát az interneten. Mivel a szintaxis konkrét alkalmazási lehetőségek korlátozott, csak a képzelet a fejlesztő, hanem sleuet szem előtt tartani, hogy nem minden a sablonokat fog működni. A PHP érvényesítése reguláris kifejezések elengedhetetlen.

Egyszerű keresési karaktert (string)

Symbol - ez nem mindig egyetlen bájt, és gyakran egy szimbólum, mint a chip, van egy pontos jelentése mellett. Kódolás meghatározza a látható karaktereket a kódot másképp. A jel számos lehetősége van: „$” = „USD” = „USD”, ... - a pontos jelentését, hogy valahol valamit, de nem feltétlenül szoros, mivel a valuta. Azonban a pontos jelentését eshet változó PHP, amely mindig kezdődik a karakter „$”, de nem indul el a „USD” és az „USD”.

A szimbólum a program lehet egy függvény neve (string) keretében: felismerni és teljesíteni - ez a dinamikus objektum-orientált programozás, amikor a szerkezet, funkció, PHP reguláris kifejezések segítségével közvetlenül döntéseket. Talált szimbólum „fordulat”, vagyis az, hogy maga határozza meg, hogy mi a teendő a hely, ahol azt találtuk, és úgy, ahogy van „ő tartja a” szükséges.

Keressen egy karakter / sor - nem olyan egyszerű gyakorlat, és minél több információt, annál tisztább, annál jobb. Nem mindig szükséges, hogy megtalálják a legjobb tíz élelmiszerárak válasszon finom receptek születésnapi torta, vagy hogy meghatározza a vállalkozó az álmennyezet.

Gyakran van szükség, hogy optimalizálja az egyszerű algoritmusok nem egyszerű számtani információ vagy nehéz körülmények között, amikor a kívánt karakter közül lehet választani egy adatbázist, és a sort, amelyben meg kell találni - száz oldalakon. Az ár megegyezik ki egy karaktert, amikor a minta-adatbázis, és az ára az, hogy hol keresse - keresési időt hírhedt száz telek.

Lone szimbólum - ez nem egy mondat, és nem egy pár mondatot, bárhol lehet, és lehet kisebb, mint kívánatos. Hogyan állapítható meg, hogy mit találtak a kívánt?

Példa: a keresés az árak

Csak találd meg a szöveg „$” jelet - egy kicsit. Ellenőrizze, hogy ma is egy sor, ez nem mindig elég. Ha megadja a pontot, vagy számot, mielőtt a jel „$” garantálja, hogy az árak, amelyek a monetáris szimbólumok előtt nem kell figyelembe venni. Vannak is elhagyható az ár, ami általában nincs megadva valuta, de az oldalon ez a kifejezett utasításokat.

Általában a probléma megoldása a szokásos módon fújja felismerhetetlenségig algoritmus és időigényes. Eközben egy reguláris kifejezés, a szám a PHP nem talál problémát.

$ CContents = preg_match_all ( "/ [0-9] + ([\ $] | USD | y \ £ \ | UE) {1} / i.";

"Nézd e-mail - 2usd;
"
"Find e-mail - 2u.e.;
"
"A munka e-mail - UE2;
"
"Check e-mail - $ 13", $ aresult);
. „ ”. implode ( '', $ aresult [0]). '
'.

Válaszolni fog: "2; 2usd, 2u.e.", de semmit nem találtak a sort: "ellenőrizze az e-mail - $ 13."

Biztosítása jelenlétét a minta előtt vagy mögött a karakter, akkor a siker gyorsan a legtöbb esetben.

$ CContents = preg_match_all ( „/ ([0-9] + ([\ $] | USD | y \ £ \ |. Ue) {1}) | (([$] | USD | y \ £ \. | UE) {1} [0-9] +) / i „;
"Nézd e-mail - 2usd;
"
"Find e-mail - 2u.e.;
"
"A munka e-mail - UE2;
"
"Check e-mail - $ 13", $ aresult);
. „ ”. implode ( '', $ aresult [0]). '
'.

Eredmény: "4; 2usd, 2u.e., UE2, $ 13."

Mintegy szándékos logikai

Reguláris kifejezések PHP kínál, valamint más eszközökkel, de ez nem szükséges azokat a saját szabályainak megfelelően, és egyéb funkciókat, feltéve, kisbetűs szintaxis módon.

Lehetséges kezdete előtt a keresési szükséges viszont a tömb, és az a hely, ahol keresni, lebontott elemeinek szerinti előzetes kritériumoknak. Csak egy pár felrobban () és romolhat () gyakran megkönnyíti és gyorsítja a döntést.

Például, mint egy előzetes munka eredményeként született kialakult egy tömböt (adatok), a kerület, hogy hány burgonya összegyűjtött minden faluban: Ismeretlen ImyaDerevnya, térfogata, és ha az ország fut több vállalat egy sor húrok ImyaDerevnya.ImyaPredpriyatie és értéket „; " és így tovább minden vállalkozás számára. Kiszámítja a teljes beszedett összeg ebben az esetben nem lesz lehetséges, de ha impode ( „”, $ aresult), lesz egy hosszú sor, amelyben a pár - ImyaDerevnya / ImyaDerevnya.ImyaPredpriyatie - gyűjteménye méret - kerül átutalásra a „;”. Nem fordított a kapott, felrobban ( „”, $ aresult) - egy tömb is, akik gyűjtik, és hogyan gyűjtjük, majd eltávolítjuk a sorok minden nem numerikus karaktereket, már csak a számok, amelyek összege a teljes térfogat gyűjteni.

Ebben a példában a kifejezés egy PHP lehetővé teszik, hogy nem néz túl sok, hogy az könnyen és megfizethető kivonat a kívánt számszerű értékeket. Gyorsan és hatékonyan, nem számít, milyen hosszú lehet a neveket a falvak és a vállalkozások számára. Ez a megoldás nem ideális, de ez azt mutatja, hogy nem mindig követik a szabályokat kell. Gyakran lehet elérni a kívánt szokatlan módon.

Eltekintünk a technikai oldala, a kódolási

A szintaxis az algoritmus nem mondja, hogyan néz ki a valóságban. Anélkül azonban, hogy ugyanazt a kódolást az oldal, és a sorok script (kért, amelyben a képek) is belevetette magát a probléma az, hogy műszaki szempontból.

Nem szabad csak tudja, mit kell keresni, de hol kell csinálni, mikor, mennyit, mit kell változtatni, és hogyan. Formálisan PHP reguláris kifejezések végrehajtva, mint egy komplett teljes értékű mechanizmusa a saját, de különböző okok miatt, a megvalósítása a társaik több nyelven más. Az általános szabály az, mielőtt mozogni egy adott minta egy adott eszköz környezet egy adott feladatra, akkor el kell végezni a magas minőségű adaptáció, ellenőrizze az összes lehetőség a forrás adatokat.

Még ha a saját tapasztalat fejlesztése PHP reguláris kifejezések, példák, sablonok és a design gondos ellenőrzése. Dinamikusan változó nyelvi funkciók, szintaktikai és futás közben.

A szerkezete és tartalma a sablon

Ami korábban írott formában kombinációja keresési funkciók, feltételes, csere műveletek beszúrás, törlés, egy karaktersorozatot bizonyos szabályok szerint - reguláris kifejezés minta. Tény, hogy jelentős mennyiségű van kódolva egy bizonyos módon és kivitelezett egyedi szabályokkal.

Ahogyan ez lehetetlen, hogy nem minden hibakeresés nyelv operátor, akkor nem hibakeresés egy reguláris kifejezés minta, ez a folyamat csak felülmúlni. Főszabályként elfogadott változat: művek - nem működik. A szintaxis nagyon egyszerű, bár az ő felfogása, különösen az elején, nagyon nehéz.

Egy példa egy egyszerű expressziós

Egy egyszerű kiviteli alakban a sablon egyezik a húr:

$ CContents = preg_match ( "/ asdf / i", "asdf", $ aresult). „ ”. romolhat ( '', $ aresult).

Az eredmény az lesz az „1; asdf”, hiszen a függvény befejezi a működését az első találkozott egy megfelelő sablont. Az eredmény ugyanaz lesz, ha megnézzük vonal „aaaasdf” in-line „zzzasdfvvv”. Ha megadja az első és / vagy utolsó karaktere, az eredmény világos lenne:

$ CContents = preg_match ( "/ ^ asdf / i", "asdf", $ aresult). „ ”. romolhat ( '', $ aresult). '
';
$ CContents. = Preg_match ( "/ asdf $ /", "asdf", $ aresult). „ ”. romolhat ( '', $ aresult). '
'.

Az eredmény az lesz: 1; asdf1; asdf.

A szimbólumok „*” és „$” azt jelzi, hogy hol kezdjem, és a záró mintát. Eredmény preg_match funkció - az egyezések száma, lehet 0, 1, vagy hamis, ha hibát észlel. A harmadik lehetőség - egy tömb - elhelyezésük talált elemet. Abban az esetben, használja preg_match_all function () keresés folytatódik a végén sor.

$ CContents = preg_match ( "/ asdf / i", "asdf123asdf456asdf789", $ aresult). „ ”. romolhat ( '', $ aresult). '
';
$ CContents. = Preg_match_all ( "/ asdf / i", "asdf123asdf456asdf789", $ aresult). „ ”. implode ( '', $ aresult [0]). '
'.

eredmény:

1; asdf
3; asdf, asdf, asdf.

Ha nem használ speciális utasítások, minden karakter határozza meg magát, és a helyét, függetlenül attól, hogy a vonali kódolás és a sablon kódolás. A programozó biztosítania kell, hogy a kódolás ezek az elemek helyesen egymáshoz képest és a kódolási oldalon.

PHP függvények dolgozó reguláris kifejezések

A reguláris kifejezések a PHP jelentenek karakterlánc felvett egy bizonyos módon. Általában, hasonlóan más programozási nyelvek, meg vannak írva a szimbólumok „/” ... „/” és idézőjelbe, akkor szimpla vagy dupla függően algoritmus.

A fő funkciója php preg mérkőzés a reguláris kifejezések egyaránt használ mintaillesztő és megállítja az első helyen, variánsának egy utótag _all megkeresi az összes mérkőzést, és kiadja a tömb tartalmazza. Funkció preg cserélje helyettesíti Minden mérkőzés egy sablont, akkor a használható tömbök, így a keresés tervezés és végre cseréje a különböző lehetőségeket.

Érdekes lehetőségek dolgozó reguláris kifejezések segítségével kell kidolgozni preg_replace_callback funkció, amely nem vesz helyettesítő szöveget, és a függvény nevét, amely elvégzi az ilyen cserét. Amellett, hogy a gyakorlati értéke akkor végre mechanizmusok ellenőrizni minta, hogy a fejlesztés és hibakeresés az utolsó jelentős szerepet játszik.

Terjedelme reguláris kifejezések

Mivel hipertext nyelvet hivatalossá információt nagyobb mértékben vannak a kiindulási anyag. Kifejlesztett számos sablonokat és terveket, amelyek lehetővé teszik, hogy feldolgozza a nagy mennyiségű adat hatékony. A jelentős részét ez a munka elvégzésének mechanizmusokat épített különböző tartalomkezelő rendszerek (CMS).

Nem meglepő, hogy sok CMS vált de facto szabványok építkezéseken, és kíséri a (frissítve) szoftver cég, hogy nem teszi szükségessé, hogy végezzen a fejlesztési minták saját. Azonban kívül ilyen rendszerek tapasztalat reguláris kifejezések nagyon hasznos.

A reguláris kifejezések és a valós információkat

Egy fontos alkalmazási területe a reguláris kifejezések a PHP könyvtárak alakult az advent PHPOffice. Dokumentumok, táblázatok és mindig is fontos és OOXML szabvány segítségével nem csak szét a tényleges dokumentumok, hanem alakítani a programot.

Fejlődésének köszönhetően a hipertext és a PHP nyelv különösen, van egy valódi lehetőséget, hogy automatizálják a „termelés” dokumentumok „formanyomtatvány”, például, a számlák kifizetésére, jelentések, üzleti tervek, és egyéb információs objektumokat, a szerkezet és a tartalom valóban alkalmasak a formai kialakítása és automatizálása.

A kérelemmel kapcsolatban, hogy leírja a nyelv OOXML fejlesztési folyamat a reguláris kifejezések teljesen eltér a hagyományos munkavégzés a jelölő nyelvek HTML és CSS az első helyen. Az aktuális dokumentum, kivéve jelölés és amellett, hogy a tényleges tartalmat egy csomó részletek. Például egy dokumentum, amely automatikusan hozza létre a program, lesz egy erős és pontos tartalmat. Dokumentum, vagy a képződött kezelt személy, lesz egy tartalommal, festett, mint egy több tag. Bármilyen munkát a dokumentum arra a tényre, hogy a szemantika lehet egy, hanem festett különböző összegeket különböző modellek.

Természetes információk és helyzete

Egy személy Mindig érdekelt a megoldást a problémára, amely színre információkat, és ennek eredményeként az azonos információkat kap. Bemutatjuk a nyilatkozatot a probléma az irat formájában, egy személy kap egy konkrét szemantikai, ami a leírásban szakértők (módosítás, a megfogalmazások tisztázása, törlés, szerkesztés) nem csak a vezet több változatát a dokumentum, hanem a változatok eltérő tartalmat.

Különösen a feladat által meghatározott kifejezés „Problémák tér uranenie” szerkesztés után így fog kinézni: „Ahhoz, hogy oldja meg a másodfokú egyenlet.” Ha első az első hibát már kijavították, majd a második, majd a természetes információ OOXML stílusban nézhet ki: „[megoldódott] [] [négyzet] [e] [] [éljenzés] [b] [nenie]”, de ez nem garantálja, hogy ez a feladat jelenik meg a címkéket OOXML (zárójelben versenyez zárójelben tag).

Összerakni az információkat könnyen feladatok után a szerkesztési folyamat, de minden egyes alkalommal ezt az eljárást fogja végezni a különböző algoritmusok. A reguláris kifejezések, mint egyfajta eszköz formalizálásának információs problémák váltak, gyakorlatilag sétautak a formális struktúrák hipertext a természetes információkat.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 hu.birmiss.com. Theme powered by WordPress.