KompjuteraProgramimi

Shprehje e rregullt (PHP). PHP: shprehjet e rregullta shembuj

Sa i madh dhe bota të ndryshme të informacionit, po aq shpejt, ajo zgjeron dhe zhvillon. Çdo vendim - vetëm një pikë në procesin e përgjithshëm të lëvizjes. Njohuri dhe përvojë të bëjë të mundur për të kuptuar procesin e arritjes së qëllimit, por kurrë - jo rezultat i arritjeve të saj. Kjo është e sigurtë që ne mund të flasim në të ardhmen e afërt për rezultatin, por është e rëndësishme që procesi i përpiqet për të është një proces i rëndësishëm dhe objektivisht e nevojshme.

"Dëshira dhe / ose një shumë e parave" nuk ka krijuar një algoritëm të aftë për të që, dhe natyrisht "të lirë" njeriu bën, sidomos kur ai nuk mendon për atë që ai kishte bërë. Në çdo situatë problemi informacioni ka të paktën një vend i verbër, por për të, zakonisht menjëherë, njollat tjerët të pastër janë të dukshme, dhe jo domosdoshmërisht se ata janë të gjithë lule të bardha.

Teknologjinë e internetit ka thjeshtuar akses në informacion, por pyetja është - se si të vënë në të paturit e dëshiruar - nuk e thjeshtuar, dhe fituar ri "volumin" e punës. Dhe pse PHP shprehje e rregullt hendeku në mënyrë të qartë nuk është i rraskapitur, ato janë një hap i rëndësishëm përpara.

funksione të thjeshta + algorithm = model

Ofrimi shprehje të rregullta, PHP algorithm në mënyrë të konsiderueshme zvogëlon përmbajtjen, por e zakonshme funksionet e kërkimit / zëvendësimin dhe përpunimit algoritme nuk u gjet humbur rëndësinë e tyre. Idetë e reja nuk kumtoj revolucionin e informacionit. Më se mund të pritet - kodi kompakt dhe rritjen zhvilluesi aftësinë për të formuluar një pyetje kërkimi saktë.

Ju duhet të dini dhe të aplikoni në shprehje të rregullta PHP. Shembuj bindëse dhe efektive. Por ajo duhet të japë raport që me ardhjen e një motor të ri kërkimi, qendra e gravitetit u zhvendos në model - një lloj mekanizmi, edhe pse në fakt zëvendësohet nga një sërë funksionesh të thjeshtë e kërkimit, kushtet, unazore, dhe operatorët e tjerë.

kanë:

  • cilësisë dhe mjet modern - kjo është e mirë;
  • parë dhe të përdorin përvojën e kolegëve është çështje;
  • kombinuar realitetin dhe ide virtuale - një garanci e suksesit.

Arritja e njohuri se si ajo ishte e nevojshme për të kuptuar problemin, për ta zgjidhur atë, shpesh është më e rëndësishme se rezultati specifik.

Rregullta Shprehjet në PHP janë të përfaqësuar me një numër të funksioneve në gjuhën sintaksë dhe shumë shembuj të dobishme në internet. Për shkak të sintaksës opsione specifike e aplikimit janë të kufizuar vetëm nga imagjinata e zhvilluesi i saj, por sleuet mbani në mend se jo të gjitha templates do të punojnë. Duke përdorur PHP vlefshmërinë e shprehje të rregullta është thelbësor.

Karakteri i thjeshtë kërko (string)

Symbol - kjo nuk është gjithmonë një bajt vetme, dhe shpesh është një simbol, si një çip, ka një kuptim të saktë përveç. Encoding specifikon karaktere të dukshme në kodin ndryshe. Simboli mund të ketë disa opsione: "$" = "USD" = "USD", ... - është kuptimi i saktë i asaj diçka diku, por jo domosdoshmërisht të afërt, për shkak të monedhës. Megjithatë, kuptimi i saktë mund të qëndrojnë në PHP ndryshueshme, e cila gjithmonë fillon me karakter "$", por nuk mund të fillojë me "USD" dhe "USD".

Simboli i programit mund të jetë një emër funksion (string) në kuadër të: njohin dhe të përmbushin - kjo është nga dinamike programimit object-oriented, kur struktura, funksionet, PHP rregullt shprehjet janë përdorur direkt për marrjen e vendimeve. Gjetur simboli "kthehet", që është, në vetvete përcakton se çfarë të bëjë në vendin në të cilën është gjetur, dhe mënyra se është, "ai e konsideron" të nevojshme.

Kërkoni për një karakter / linjë - nuk është një ushtrim të tillë të thjeshtë, dhe më shumë informacion, më e qartë aq më mirë. Nuk është gjithmonë e nevojshme për të gjetur dhjetë më të mirë në çmimet e ushqimit, zgjidhni receta të shijshme tortë ditëlindjen, ose për të përcaktuar kontraktuesin për tavan të rreme.

Shpesh është e nevojshme për të optimizuar algoritme të thjeshta nuk janë informata të thjeshta aritmetike ose në kushte të vështira, kur karakteri i dëshiruar për të zgjedhur nga një bazë të dhënash, dhe vijën në të cilën ajo është e nevojshme për të gjetur - një njëqind vende. Çmimi është i barabartë për të zgjedhur një karakter nga koha e bazës së të dhënave mostër, dhe çmimin e ku mund të shikoni - koha Kërko qindra famëkeqe e vendeve.

simbol Lone - kjo nuk është një frazë, dhe jo disa fjali, ai mund të jetë kudo dhe të jetë aq e vogël sa e dëshiruar. Si për të përcaktuar se çfarë është gjetur është e dëshiruar?

Shembull: Kërkimi për çmimet

Vetëm të gjeni tekstin "$" simbol - pak. Kontrolloni se ajo përballet me një numër, kjo nuk është gjithmonë e mjaftueshme. Nëse ju ofrojnë një pikë apo numrin para "$" Simboli është një garanci se çmimet në të cilën simbolet monetare janë përpara nuk do të merren parasysh. Nuk janë lënë jashtë edhe çmimin, i cili në përgjithësi nuk është e specifikuar valutë, por në faqe është në udhëzimet eksplicite.

Në përgjithësi, zgjidhja e problemit në mënyrë të zakonshme të fryj përtej njohjes algorithm dhe kohë-konsumojnë. Ndërkohë, duke përdorur një shprehje të rregullta, numri i PHP do të gjeni asnjë problem.

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

"Ja e-mail - 2usd,
";
"Gjej e-mail - 2u.e;
.";
"Puna e-mail - ue2,
";
"Kontrollo e-mail - $ 13", $ aresult);
. '; '. shpërthej ( ', $ aresult [0]). '
'.

Do të përgjigjet: "2; 2usd, 2u.e.", por nuk ka gjetur asgjë në vijën: "kontrolloni e-mail - $ 13."

Duke siguruar për praninë e modelit në para ose prapa karakterit, ju mund të arrijë sukses të shpejtë në shumicën e rasteve.

$ CContents = preg_match_all ( "/ ([0-9] + ([\ $] | usd | y \ £ \. | Ue) {1}) | (([$] | usd | y \ £ \. | ue) {1} [0-9] +) / i ';
"Ja e-mail - 2usd,
";
"Gjej e-mail - 2u.e;
.";
"Puna e-mail - ue2,
";
"Kontrollo e-mail - $ 13", $ aresult);
. '; '. shpërthej ( ', $ aresult [0]). '
'.

Rezultati: "4; 2usd, 2u.e., ue2, $ 13."

Rreth logjikës paqëllimshme

Shprehjet PHP ofron rregullt, si dhe mjete të tjera, por kjo nuk është e nevojshme për të aplikuar ato sipas rregullave të saj ose të përdorin funksionet e tjera të parashikuara në rrugën vogle sintaksë.

Të jetë e mundur para fillimit të kontrollit të kërkuar për ta kthyer në grup, dhe vendi ku ne të kërkimit, thyer poshtë në komponentë sipas kritereve të mëparshme. Vetëm disa shpërthejnë () dhe shpërthej () shpesh thjeshton dhe përshpejton vendimin.

Për shembull, si rezultat i punës paraprake formuar një grup të strings (të dhënave) në rrethin se sa patate të mbledhura në çdo fshat: e panjohur ImyaDerevnya dhe vëllimit të mbledhura, dhe nëse vendi shkon disa kompani në një grup të strings është ImyaDerevnya.ImyaPredpriyatie dhe vlera nëpërmjet "; " dhe kështu me radhë të gjitha ndërmarrjet. Llogarit shumën totale të mbledhura në këtë rast nuk do të jetë e mundur, por në qoftë se ju bëni impode ( ";", $ aresult), do të jetë një linjë të gjatë, në të cilën çifti - ImyaDerevnya / ImyaDerevnya.ImyaPredpriyatie - një koleksion i madhësisë - do të transferohet nëpërmjet ";". Të bëjë një kundërt mbi rezulton, shpërthejnë ( ";", $ aresult) - një grup i të gjithëve, që mblidhen dhe si është mbledhur, dhe pastaj duke hequr linjat nga të gjitha karaktere jo-numerike, ne kemi vetëm numra, shuma e së cilës është vëllimi i përgjithshëm mbledhura.

Në këtë shembull, shprehja e rregullt në PHP nuk do të lejojë që të duken shumë, ata janë të ekstrakt të lehtë dhe të përballueshme vlerat e dëshiruara numerike. Shpejt dhe me efikasitet, pa marrë parasysh se sa kohë mund të jetë emrat e fshatrave dhe bizneseve. Kjo zgjidhje nuk është ideale, por kjo tregon se jo gjithmonë të ndjekin rregullat duhet të jenë. Shpesh është e mundur për të arritur dëshiruar në një mënyrë të pazakontë.

Nxjerrjen nga ana teknike, kodues

Sintaksa e algorithm nuk thotë se si duket në realitet. Megjithatë, duke siguruar të njëjtin kodimin e faqes, dhe rreshtave script (e cila është kërkuar në të cilin imazhet) mund të zhytet në problem është aspektet e saj teknike.

Një jo vetëm që duhet të dini se çfarë për të kërkuar, por ku për të bërë atë, kur, sa, çfarë duhet të ndryshojë dhe se si. Formalisht PHP shprehje të rregullta ekzekutuar si një mekanizëm të plotë të plotë me tipare të vet, por për shumë arsye, realizimi i homologëve të saj në shumë gjuhë të ndryshme. Si rregull i përgjithshëm, para se të shkojë një model të veçantë në një mjedis të veçantë mjet për një detyrë të veçantë, është e nevojshme për të kryer përshtatjen me cilësi të lartë, kontrolloni për të gjitha opsionet e mundshme për të dhënat burimore.

Edhe në qoftë se ju përdorni përvojën tuaj në zhvillim në PHP, shprehjet e rregullta, shembuj, templates dhe dizajn kërkon kontrollin kujdesshëm. Dinamike ndryshimin e funksionalitetin gjuhës, sintaksë dhe Runtime.

Struktura dhe përmbajtja e një template

Çfarë është shkruar më parë në formën e një kombinimi të funksioneve të kërkimit, conditionals, operacionet zëvendësim, insert, fshini, është një varg i karaktereve sipas rregullave të caktuara - model të rregullt shprehjes. Në fakt, një sasi të konsiderueshme është i koduar në një mënyrë të caktuar dhe të ekzekutuar nga rregulla të caktuara.

Ashtu siç është e pamundur për të bërë çdo operator gjuhën debugging, ju nuk mund të debug një model të rregullt shprehjes, ky proces mund të matem. Si një rregull i përgjithshëm i miratuar versionin: vepra - nuk punon. Sintaksa është shumë e thjeshtë, edhe pse perceptimin e tij, sidomos në fillim, është shumë e vështirë.

Një shembull i një shprehje të thjeshtë

Në një mishërim të thjeshtë, template ndeshjet e vargut:

$ CContents = preg_match ( "/ asdf / I", "asdf", $ aresult). '; '. shpërthej ( ',', $ aresult).

Rezultati do të jetë "1; asdf", pasi që funksioni përfundon veprimtarinë e tij në fillim u takua me një template përputhen. Rezultati do të jetë e njëjtë, nëse ne shikojmë në linjë "aaaasdf" në linjë "zzzasdfvvv". Nëse ju specifikoni karakterin e parë dhe / ose të fundit, rezultati do të jetë i qartë:

$ CContents = preg_match ( "/ ^ asdf / I", "asdf", $ aresult). '; '. shpërthej ( ',', $ aresult). '
';
$ CContents. = Preg_match ( "/ $ asdf /", "asdf", $ aresult). '; '. shpërthej ( ',', $ aresult). '
'.

Rezultati do të jetë: 1; asdf1; asdf.

Simbolet "*" dhe "$" tregojnë se ku modeli fillon dhe mbaron me çfarë. Rezultojë funksion preg_match - numrin e ndeshjeve, ajo mund të jetë 0, 1, ose false, në qoftë se një gabim është zbuluar. E treta opsion - një grup - të vendosur elementin e vetëm gjetur. Në rastin e përdorimit të funksionit preg_match_all () Kërkimi vazhdon për të vijë fund.

$ CContents = preg_match ( "/ asdf / I", "asdf123asdf456asdf789", $ aresult). '; '. shpërthej ( ',', $ aresult). '
';
$ CContents. = Preg_match_all ( "/ asdf / I", "asdf123asdf456asdf789", $ aresult). '; '. shpërthej ( ', $ aresult [0]). '
'.

Rezultati:

1; asdf
3; asdf, asdf, asdf.

Në qoftë se ju nuk e përdorni udhëzime të veçanta, çdo karakter definon veten dhe vendin e saj, pavarësisht nga coding linjës dhe template kodim. Programues duhet të sigurojë që kodimin e këtyre elementëve ishin të saktë në lidhje me çdo faqe të tjera dhe encoding.

funksionet e PHP për të punuar me shprehje të rregullta

shprehje të rregullta për PHP paraqesin një varg karakter të regjistruar në një mënyrë të caktuar. Zakonisht, në analogji me gjuhë të tjera programimi, ata janë shkruar në simbolet "/" ... "/" dhe vendosur në thonjëza, ju mund të përdorni të vetme apo të dyfishtë në varësi të algorithm.

Kryesore Funksioni php preg ndeshje shprehje të rregullta përdor dy ndeshje model dhe ndalon atë në vendin e parë, një variant i tij me një _all prapashtesë gjen të gjitha ndeshjet, dhe nxjerr array saj. preg funksion të zëvendësojë zëvendëson çdo ndeshje një template, ajo mund të punojnë me të vargjeve, duke lejuar hartimin e kërkimit dhe të kryejë zëvendësimin e një shumëllojshmëri të opsioneve.

Opsionet interesante për të punuar me shprehje të rregullta mund të zhvillohet duke përdorur funksionin preg_replace_callback që merr asnjë tekst zëvendësim, dhe emrin e funksionit, e cila do të kryejë një zëvendësim të tillë. Përveç vlerës praktike ju mund të zbatojë mekanizma të kontrolloni model, se zhvillimi dhe debugging e fundit luan një rol të rëndësishëm.

Fusha e shprehje të rregullta

Që gjuhë HyperText janë formalizuar informacion në një masë më të madhe se ata janë materiali fillestar. Ka zhvilluar një numër të madh të templates dhe harton që lejojnë për të përpunuar sasi të mëdha të të dhënave në mënyrë efikase. Një pjesë e rëndësishme e kësaj pune është kryer mekanizma ndërtuar në sistemet e ndryshme të menaxhimit të përmbajtjes (CMS).

Nuk është çudi, shumë CMS bërë standardet de facto për faqet e ndërtimit dhe duke u shoqëruar nga kompanitë (përditësuar) software, ata nuk e bëjnë të nevojshme për të kryer zhvillimin e modeleve më vete. Megjithatë, jashtë sistemeve të tilla kanë përvojë me shprehje të rregullta është shumë i dobishëm.

shprehje të rregullta dhe informacioni i vërtetë

Një fushë e rëndësishme e aplikimit të shprehje të rregullta në bibliotekat PHP formuar PHPOffice Advent. Punojnë me dokumente, spreadsheets, dhe gjithmonë ka pasur të rëndësishme dhe standarde OOXML është e mundur jo vetëm për të çmontuar dokumentet aktuale, por edhe për të krijuar programin e tyre.

Në sajë të zhvillimit të HyperText dhe PHP gjuhë në veçanti, ekziston një mundësi reale për të Automate "prodhimin" e dokumenteve "Formulari standard:", për shembull, faturat për pagesë, raportet, planet e biznesit, dhe objekte të tjera të informacionit, struktura dhe përmbajtja në të vërtetë janë të përshtatshme për formalizimin dhe automatizimi.

Në lidhje me kërkesën për të përshkruar procesin e zhvillimit OOXML gjuha e shprehje të rregullta është mjaft e ndryshme nga punimi tradicionale me gjuhë markup HTML dhe CSS, në vendin e parë. Dokumenti aktual, me përjashtim të shënuar dhe përveç përmbajtjes aktuale ka shumë detaje. Për shembull, një dokument që është krijuar automatikisht nga programi, do të ketë një përmbajtje të fortë dhe të saktë. Dokument formuar apo personi trajtohet, do të ketë një përmbajtje, ishte pikturuar mbi një pluralitet tags. Çdo punë me dokumentin çon në faktin se semantikë e ajo mund të jetë një, por të pikturuar në sasi të ndryshme në dizajne të ndryshme.

Informacion natyrore dhe situata

Një person gjithmonë të interesuar në zgjidhjen e problemit, i cili ka inskenuar informacion dhe, si pasojë, i njëjti informacion do të jepet. Duke prezantuar deklaratën e problemit në formën e një dokumenti, një person merr një semantikë të veçantë, e cila është në specifikimin e ekspertëve (amendamenti, sqarimin formulimin, Fshij, ndrysho) jo vetëm të çon në versionet e shumta të një dokumenti, por edhe për versionet e saj me përmbajtje të ndryshme.

Në veçanti, detyra përcaktuar me shprehjen "Solve uranenie Sheshi" pas redaktimit do të duket si ky: ". Për të zgjidhur një ekuacion kuadratik" Nëse në të parë gabimi i parë ka qenë korrigjohet, dhe pastaj e dyta, atëherë informacioni natyror në stilin OOXML mund të duket si: "[Zgjidhur] [] [katror] [e] [] [cheers] [b] [nenie]", por kjo nuk e bën garantoj se kjo është detyrë do të shfaqet në etiketon OOXML (kllapa matem kllapa tags).

Për të vënë së bashku të dhënat mund të jenë të lehtë pas çdo detyrë procesin e redaktimit, por çdo herë kjo procedurë do të kryhet nga algoritme të ndryshme. shprehje të rregullta, si një lloj vegle prej formalizimin e problemeve të informacionit janë bërë, në fakt, në këmbë shtigjet nga strukturat formale të HyperText me informacionin natyrore.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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