Computer, Programming
Ang regular nga ekspresyon (PHP). PHP: regular nga mga ekspresyon mga panig-ingnan
Sa unsa nga paagi dako ug lain-laing mga kalibutan sa impormasyon, sama sa madali, kini mao ang pagpalapnag ug og. Sa bisan unsa nga desisyon - lamang sa usa ka punto sa sa kinatibuk-ang proseso sa kalihukan. Kahibalo ug kasinatian sa paghimo niini nga posible nga sa pagsabut sa proseso sa pagkab-ot sa tumong, apan dili gayud - dili ang resulta sa iyang mga kalampusan. Kini mao ang kadudahan nga kita mosulti sa foreseeable sa umaabot sa resulta, apan kini mao ang importante nga ang proseso sa pagpaningkamot kay kini mao ang usa ka mahinungdanon nga ug mapihigong gikinahanglan nga proseso.
"Tinguha ug / o sa usa ka daghan sa salapi" wala paghimo sa usa ka algorithm nga makahimo sa nga, ug siyempre "free" sa tawo, ilabi na kon wala siya maghunahuna mahitungod sa unsay iyang gibuhat. Sa bisan unsa nga kahimtang sa problema impormasyon adunay sa labing menos usa ka buta nga dapit, apan alang kaniya, sa kasagaran diha-diha dayon, ang uban nga mahinlo lama makita, ug dili kinahanglan nga sila ang tanan nga puti nga bulak.
Internet teknolohiya nga ginpasimple nga ang access sa impormasyon, apan ang pangutana mao - kon sa unsang paagi sa pag-ibutang sa may sa gitinguha - dili ginpasimple, ug nakabaton bag-ong "gidaghanon" sa trabaho. Ug bisan tuod PHP regular nga ekspresyon gintang ang tin-aw nga dili gikapoy, sila usa ka mahinungdanon nga lakang sa unahan.
Yano gimbuhaton + algorithm = sumbanan
Pagtanyag sa regular nga mga ekspresyon, PHP algorithm kamahinungdanon pagmobu, pagminus sa sulod, apan ang naandan nga gimbuhaton search / puli ug pagproseso algorithms nakita wala nawad-an sa ilang kamahinungdanon. Bag-ong mga ideya nga dili magpaila sa impormasyon rebolusyon. Ang labing nga mahimong gilauman - compact code ug sa pagdugang sa developer ang abilidad sa paghimo sa usa ka pangutana search husto.
Ikaw kinahanglan nga masayud ug sa paggamit sa PHP regular nga mga ekspresyon. Mga panig-ingnan makapakombinsir ug epektibo. Apan kini kinahanglan nga sa paghatag sa mga taho nga ang uban sa mga anhi sa usa ka bag-o nga search engine, ang sentro de grabidad mibalhin sa sumbanan - usa ka matang sa mekanismo, bisan sa pagkatinuod gipulihan sa usa ka hugpong sa yano nga gimbuhaton search, mga kahimtang, galong, ug uban pang mga operators.
adunay:
- kalidad ug modernong himan - kini maayo;
- tan-awa ang ug sa paggamit sa kasinatian sa mga kauban mao ang butang;
- paghiusa kamatuoran ug virtual nga ideya - sa usa ka garantiya sa kalampusan.
Pagkab-ot sa kahibalo sa unsa nga paagi nga kini mao ang gikinahanglan nga sa pagsabut sa problema, sa pagsulbad niini, kini mao ang kanunay nga mas importante pa kay sa piho nga resulta.
Ang regular nga mga ekspresyon sa PHP girepresentahan sa usa ka gidaghanon sa mga gimbuhaton sa syntax pinulongan ug usa ka daghan sa mga mapuslanon nga mga panig-ingnan diha sa Internet. Tungod sa syntax piho nga mga kapilian aplikasyon limitado lamang pinaagi sa pagpalandong sa mga developer, apan sleuet ibutang sa hunahuna nga dili tanan sa mga templates nga pagtrabaho. Pinaagi sa paggamit sa PHP validation sa regular nga mga ekspresyon mao ang mahinungdanon.
Yano nga kinaiya search (hilo)
Simbolo - kini mao ang dili kanunay nga usa ka single Byte, ug mao ang kanunay nga ang usa ka simbolo, ingon sa usa ka chip, adunay usa ka tukma nga kahulogan sa dugang pa. Encode nagtumbok sa makita nga mga karakter sa code sa lahi nga paagi. simbolo sa mahimo nga sa pipila ka mga kapilian: "$" = "USD" = "USD", ... - mao ang tukma nga kahulogan sa niana nga dapit sa usa ka butang, apan dili kinahanglan suod, tungod sa currency. Apan, ang eksaktong kahulogan mahimong mamakak diha sa baryable PhP, nga sa kanunay magsugod uban sa kinaiya "$", apan dili sugdan uban sa "USD" ug "USD".
Ang simbolo sa programa mahimo nga usa ka function nga ngalan (hilo) sa konteksto sa: pag-ila ug pagtuman sa - kini gikan sa dinamikong butang-oriented programming, sa diha nga ang gambalay, gimbuhaton, PHP regular nga mga ekspresyon nga gigamit sa alang sa paghimo og mga desisyon. Nakit-an ang simbolo "puli", nga mao, pinaagi sa iyang kaugalingon motino unsay buhaton sa dapit diin kini makaplagan, ug ang paagi nga kini mao, "siya giisip" nga gikinahanglan.
Search alang sa usa ka kinaiya / linya - dili sa ingon nga sa usa ka yano nga ehersisyo, ug ang mga dugang nga impormasyon, ang mga klaro ang mas maayo. Kini dili sa kanunay nga gikinahanglan aron sa pagpangita sa napulo ka labing maayo nga sa presyo sa pagkaon, sa pagpili sa lamian resipe birthday cake, o sa pagtino sa kontraktor alang sa bakak nga kisame.
Kasagaran kini mao ang gikinahanglan nga sa optimize sa mga yano nga algorithms dili yano nga aritmetik nga impormasyon o sa malisud nga mga kondisyon, sa diha nga ang gitinguha nga kinaiya sa pagpili gikan sa usa ka database, ug ang linya nga kini mao ang gikinahanglan nga sa pagpangita sa - sa usa ka gatus ka mga dapit. bili mao ang katumbas sa pagpili sa usa ka kinaiya nga gikan sa panahon nga ang sample database, ug ang bili sa diin sa pagtan-aw - sa panahon search notoryus nga sa gatusan ka mga sites.
Lone simbolo - nga kini dili usa ka hugpong sa mga pulong, ug dili sa usa ka pipila ka mga tudling-pulong, nga siya mahimo nga bisan asa ug nga ingon sa gamay nga sama sa gitinguha. Kon sa unsang paagi sa pagtino kon unsa ang nakaplagan ang gitinguha?
Panig-ingnan: pagpangita sa mga presyo
Lang sa pagpangita sa teksto "$" simbolo - sa usa ka gamay nga. Check nga kini atubang sa usa ka gidaghanon, kini mao ang dili kanunay igo. Kon sa paghatag kaninyo sa usa ka punto o gidaghanon sa atubangan sa simbolo "$" mao ang usa ka garantiya nga sa mga presyo sa sa nga sa kwarta simbolo anaa sa unahan dili gidala ngadto sa asoy. Adunay usab ilakip sa presyo, nga sa kinatibuk-dili bungat currency, apan sa panid nga kini mao ang sa ibabaw sa tin-aw nga mga panudlo.
Sa kinatibuk-an, ang solusyon sa mga problema sa naandan nga paagi pagpaginhawa sa unahan pag-ila algorithm ug panahon-nga nagaut-ut. Samtang, sa paggamit sa usa ka regular nga ekspresyon, ang gidaghanon sa mga PHP makakaplag walay mga problema.
$ CContents = preg_match_all ( "/ [0-9] + ([\ $] | USD | y \ £ \ | UE) {1} / i.";
"Tan-awa e-mail - 2usd;
";
"Pangitaa e-mail - 2u.e;
.";
"Trabaho e-mail - ue2;
";
"Check e-mail - $ 13", $ aResult);
. '; '. matumpag ( ',', $ aResult [0]). '
'.
Motubag: "2; 2usd, 2u.e.", Apan wala makakaplag ug bisan unsa sa mga linya: "check sa e-mail - $ 13."
Pagsangkap alang sa sa atubangan sa mga sumbanan diha sa atubangan o sa likod sa kinaiya, nga kamo mahimo sa pagkab-ot sa kalampusan sa madali diha sa kadaghanan sa mga kaso.
$ CContents = preg_match_all ( "/ ([0-9] + ([\ $] | USD | y \ £ \ |. UE) {1}) | (([$] | USD | y \ £ \. | UE) {1} [0-9] +) / i ";
"Tan-awa e-mail - 2usd;
";
"Pangitaa e-mail - 2u.e;
.";
"Trabaho e-mail - ue2;
";
"Check e-mail - $ 13", $ aResult);
. '; '. matumpag ( ',', $ aResult [0]). '
'.
Resulta: "4; 2usd, 2u.e., ue2, $ 13."
Mga unintended katarungan
Regular Ekspresyon PhP tanyag, ingon man usab sa uban nga mga himan, apan kini dili kinahanglan sa paggamit kanila sumala sa mga lagda sa iyang o sa paggamit sa ubang mga gimbuhaton nga gihatag lowercase syntax dalan.
Posible sa atubangan sa sinugdan sa search nga gikinahanglan aron sa pagpabalik sa mga gubat, ug ang dapit diin kita mangita, gibungkag sa mga sangkap sumala sa wala pa criteria. Lang sa usa ka magtiayon nga sa mga mobuto () ug matumpag () sa kasagaran mopayano ug paspas nga mga desisyon.
Pananglitan, ingon sa usa ka resulta sa preliminary nga buhat nga nag-umol sa usa ka gubat sa mga kuldas (data) sa distrito kon sa unsang paagi sa daghan nga mga patatas nga nakolekta sa matag balangay: Unknown ImyaDerevnya ug gidaghanon nakolekta, ug kon sa nasud midagan sa pipila ka mga kompanya sa usa ka gubat sa mga kuldas mao ImyaDerevnya.ImyaPredpriyatie ug bili pinaagi sa "; " ug sa ingon sa tanan nga mga negosyo. Kuwentahon ang kinatibuk-ang kantidad nga nakolekta sa niini nga kaso dili mahimo, apan kon inyong buhaton impode ( ";", $ aResult), mahimong usa ka taas nga linya, diin ang pares - ImyaDerevnya / ImyaDerevnya.ImyaPredpriyatie - sa usa ka koleksyon sa gidak-on - nga ibalhin pinaagi sa ";". Buhata ang usa ka Reverse sa miresulta, mobuto ( ";", $ aResult) - usa ka gubat sa tanan, nga kolektahon ug sa unsa nga paagi kini nga nakolekta, ug unya pinaagi sa pagwagtang sa mga linya gikan sa tanan nga dili-numerawo mga karakter, kita adunay lamang numero, ang igo nga gidaghanon sa nga mao ang kinatibuk-ang gidaghanon kolektahon.
Sa panig-ingnan niini nga, ang regular nga ekspresyon sa PHP itugot nga dili sa pagtan-aw usab sa daghan, sila sayon ug barato nga kinuha sa gitinguha numero nga mga prinsipyo. Sa madali ug sa pagkamasangputon, bisan sa unsa nga paagi dugay kini mao ang mga ngalan sa mga balangay ug sa mga negosyo. Kini nga solusyon mao ang dili sulundon nga, apan kini nagpakita nga dili kanunay nga mosunod sa mga lagda kinahanglan nga. Kini mao ang kanunay nga posible nga sa pagkab-ot sa gitinguha nga sa usa ka talagsaon nga paagi.
Abstracting gikan sa teknikal nga bahin, ang pag-encode
Ang syntax sa algorithm wala mag-ingon kon sa unsang paagi kini motan-aw sa kamatuoran. Apan, sa paghatag sa sama nga pag-encode sa mga panid, ug mga laray nga gihulma script (nga nagtinguha sa diin ang mga larawan) mahimo plunge ngadto sa problema mao ang teknikal nga aspeto.
dili lamang sa usa ka kinahanglan nga mahibalo kon unsa ang sa pagtan-aw alang sa, apan diin sa pagbuhat niini, sa diha nga, sa unsa nga paagi daghan, unsa sa pag-usab ug sa unsa nga paagi. Pormal Flp regular nga mga ekspresyon gipatay ingon nga usa ka bug-os nga bug-os-Featured mekanismo sa iyang kaugalingon, apan alang sa daghang mga rason, ang katumanan sa iyang mga counterparts sa daghang mga pinulongan sa lain-laing. Ingon sa usa ka kinatibuk-ang pagmando sa, sa dili pa mobalhin sa usa ka partikular nga sumbanan sa usa ka partikular nga palibot nga himan alang sa usa ka piho nga buluhaton, kini mao ang gikinahanglan nga sa pagtuman sa taas nga-kalidad nga adaptation, check alang sa tanan nga mga posible nga mga kapilian alang sa mga data tinubdan.
Bisan kon kamo mogamit sa inyong mga kaugalingon nga kasinatian sa pagpalambo sa PhP, regular nga mga ekspresyon, panig-ingnan, templates ug disenyo nagkinahanglan amping pagsusi. Maabtikon-usab sa kagamitan, katuyoan sa pinulongan, syntax ug Runtime.
Ang gambalay ug sa sulod sa usa ka template
Unsa ang kaniadto gisulat sa porma sa usa ka kombinasyon sa mga gimbuhaton search, conditionals, puli operasyon, gisukip, panas, mao ang usa ka hilo sa mga karakter sumala sa pipila ka mga lagda - regular nga ekspresyon nga sumbanan. Sa pagkatinuod, ang usa ka mahinungdanon nga kantidad ang encoded sa usa ka paagi ug gipatay pinaagi sa piho nga mga lagda.
Sama nga kini mao ang imposible sa pagbuhat sa bisan unsa nga operator debugging nga pinulongan, nga kamo dili debug sa usa ka regular nga sumbanan nga ekspresyon, kini nga proseso lamang sundon. Ingon sa usa ka kinatibuk-ang pagmando sa gisagop nga bersyon: mga buhat - wala sa trabaho. syntax mao ang kaayo mga walay-pagtagad, bisan tuod ang iyang panglantaw, ilabi na sa sinugdan, mao ang lisud kaayo.
Usa ka panig-ingnan sa usa ka yano nga ekspresyon
Sa usa ka yano nga larawan, ang template motakdo sa hilo:
$ CContents = preg_match ( "/ asdf / i", "asdf", $ aResult). '; '. matumpag ( ',', $ aResult).
Ang resulta mahimong "1; asdf", sukad sa function mokompleto operasyon niini diha sa unang nahimamat sa usa ka matching template. Ang resulta mao ang sama nga, kon motan-aw kita sa linya "aaaasdf" diha sa linya "zzzasdfvvv". Kon hingalan kaninyo sa una ug / o sa katapusan nga kinaiya, ang resulta nga tin-aw:
$ CContents = preg_match ( "/ ^ asdf / i", "asdf", $ aResult). '; '. matumpag ( ',', $ aResult). '
';
$ CContents. = Preg_match ( "/ asdf $ /", "asdf", $ aResult). '; '. matumpag ( ',', $ aResult). '
'.
Ang resulta mahimong: 1; asdf1; asdf.
Ang mga simbolo "*" ug "$" nagpakita diin sa pagsugod sa ug sa katapusan sumbanan. Moresulta preg_match function - ang gidaghanon sa mga posporo, kini mahimong 0, 1, o bakak, kon ang usa ka sayop ang mamatikdan. Ang ikatulo nga kapilian - sa usa ka gubat - gibutang lamang nakaplagan elemento. Sa kaso sa paggamit sa preg_match_all function () search nagpadayon ngadto sa katapusan sa linya.
$ CContents = preg_match ( "/ asdf / i", "asdf123asdf456asdf789", $ aResult). '; '. matumpag ( ',', $ aResult). '
';
$ CContents. = Preg_match_all ( "/ asdf / i", "asdf123asdf456asdf789", $ aResult). '; '. matumpag ( ',', $ aResult [0]). '
'.
resulta:
1; asdf
3; asdf, asdf, asdf.
Kon kamo dili mogamit sa espesyal nga mga panudlo, ang matag kinaiya naghubit sa iyang kaugalingon ug sa iyang dapit, bisan pa sa mga linya coding ug template coding. programmer kinahanglan sa pagsiguro nga ang pag-encode sa mga elemento husto sa relasyon sa usag usa ug pag-encode panid.
PHP gimbuhaton alang sa pagtrabaho uban sa regular nga mga ekspresyon
Regular nga mga ekspresyon alang sa PHP nagrepresentar sa usa ka kinaiya hilo nga natala sa usa ka paagi. Kasagaran, pinaagi sa analohiya uban sa uban nga mga pinulongan programming, sila nahisulat diha sa mga simbolo "/" ... "/" ug gibutang sa kinutlo marka, ikaw makahimo sa paggamit sa single o double depende sa algorithm.
Ang nag-unang function Flp preg match regular nga mga ekspresyon nga gigamit sa duha sumbanan duwa ug pag-undang niini sa unang dapit, sa usa ka laing niini uban sa usa ka suffix nga _all makakaplag sa tanan nga mga posporo, ug outputs sa gubat niini. Function preg-ilis mopuli sa matag pagpares sa usa ka sundanan, mahimo kini sa trabaho uban sa arrays, pagtugot sa search disenyo ug paghimo sa puli sa usa ka matang sa mga kapilian.
Makapaikag nga mga kapilian alang sa pagtrabaho uban sa regular nga mga ekspresyon mahimong naugmad sa paggamit preg_replace_callback function nga walay puli nga teksto, ug ang ngalan sa function, nga dad-on sa maong usa ka puli. Dugang pa sa mga praktikal nga bili nga imong mahimo sa pagpatuman mekanismo check sumbanan, nga ang kalamboan ug debugging sa katapusan nga pasundayag sa usa ka mahinungdanon nga papel.
Kasangkaran sa regular nga mga ekspresyon
Tungod kay hypertext pinulongan pormal nga impormasyon sa usa ka mas dako nga gidak-on sila sa pagsugod nga materyal. Og usa ka dako nga gidaghanon sa mga templates ug sa mga laraw nga nagtugot sa sa pagproseso sa dako nga kantidad sa data pagkamasangputon. Usa ka mahinungdanon nga bahin sa niini nga buhat mao ang gihimo mga mekanismo nga gitukod ngadto sa nagkalain-laing mga sulod sistema sa pagdumala (CMS).
Dili ikatingala, daghang CMS mahimong de facto nga mga sumbanan sa pagtukod sites, ug inubanan sa mga kompanya sa (updated) software, sila wala paghimo niini nga gikinahanglan sa pagtuman sa sa kalamboan sa mga sumbanan sa iyang kaugalingon. Apan, sa gawas sa maong sistema sa adunay kasinatian uban sa regular nga mga ekspresyon mao ang kaayo mapuslanon.
Regular nga mga ekspresyon ug ang tinuod nga impormasyon
Usa ka importante nga dapit sa paggamit sa regular nga mga ekspresyon sa PHP librarya nag-umol sa anhi PHPOffice. Trabaho uban sa mga dokumento, spreadsheets, ug sa kanunay may mga importante ug OOXML sumbanan mao ang posible nga dili lamang aron sa pagbungkag sa mga aktuwal nga mga dokumento, apan usab sa paghulma sa ilang programa.
Salamat sa sa kalamboan sa hypertext PhP pinulongan sa partikular, adunay usa ka tinuod nga oportunidad sa automate sa "produksyon" sa mga dokumento "standard nga porma", alang sa panig-ingnan, invoices alang sa pagbayad, mga report, plano sa negosyo, ug uban pang mga impormasyon nga mga butang, ang gambalay ug ang mga sulod sa pagkatinuod uyon nga pormal og automation.
Sa kalabotan sa aplikasyon sa paghulagway sa pinulongan OOXML proseso sa pagpalambo sa regular nga mga ekspresyon mao na sa lain-laing gikan sa tradisyonal nga pagbuhat uban sa markup pinulongan HTML ug CSS sa unang dapit. Ang aktuwal nga dokumento, gawas sa pagmarka ug dugang pa sa aktuwal nga sulod adunay usa ka daghan sa mga detalye. Pananglitan, ang usa ka dokumento nga awtomatikong gibuhat pinaagi sa programa, adunay usa ka lig-on ug tukmang sulod. Document giumol o ang tawo nga pagtratar, adunay usa ka sulod, si gipintalan sa usa ka dinaghan nga mga tags. Bisan unsa nga buhat uban sa mga dokumento nga modala ngadto sa sa kamatuoran nga ang mga semantiko niini mahimong usa, apan gipintalan sa nagkalain-laing mga kantidad sa lain-laing mga laraw.
Natural nga impormasyon ug kahimtang
Ang usa ka tawo sa kanunay interesado sa solusyon sa mga problema, nga gipahigayon sa impormasyon ug, ingon sa usa ka resulta, sa mao usab nga impormasyon nga gihatag. Pagtudlo sa mga pamahayag sa mga problema diha sa porma sa usa ka dokumento, ang usa ka tawo gets sa usa ka piho nga semantiko, nga anaa sa paghingalan sa mga eksperto (amendment, katin-awan nga mga pulong, panas, edit) dili lamang modala ngadto sa daghang mga bersiyon sa usa ka dokumento, kondili usab sa mga bersiyon niini sa lain-laing mga sulod.
Sa partikular, ang buluhaton nga gitakda sa hugpong sa mga pulong "Pagsulbad square uranenie" human sa pag-usab motan-aw sama niini: ". Sa pagsulbad sa usa ka quadratic talaid" Kon sa una ang unang sayop nga id, ug dayon sa ikaduha, nan ang natural nga impormasyon sa OOXML estilo tingali tan-awon sama sa: "[masulbad] [] [square] [e] [] [makalipay] [b] [nenie]", apan kini dili garantiya nga kini mao ang buluhaton makita diha sa mga tag sa OOXML (bracket sundon bracket tags).
Sa pagbutang sa tingub ang mga impormasyon nga mahimong dali human sa matag buluhaton sa proseso pag-edit, apan sa matag higayon nga kini nga pamaagi nga gihimo sa mga nagkalain-laing algorithms. Regular nga mga ekspresyon, ingon sa usa ka matang sa himan nga pormal sa mga problema nga impormasyon nahimong, sa epekto, nga nagalakaw mga dalan gikan sa pormal nga istruktura sa hypertext sa natural nga impormasyon.
Similar articles
Trending Now