AmakhompyuthaIzinhlelo

Javascript izibonelo ejwayelekile, hlola Izengezo ezivamile

Ngaphambi kokufika uxhumano ulimi, kodwa kunalokho, kuze kwaba sobala ukuthi akufanele nje kowa ukwenza kanjalo ngaphansi kwezimo ezithile, endaweni ethile, ngaphansi idatha esishintshile e nenani kwesokudla, usesho evamile futhi esikhundleni umsebenzi ihlelwe iyiphi eyinkimbinkimbi uMklami. Dala yobuciko yobuciko yokusesha ngezilimi izinhlelo, kanye database wayevelele amafomu kwezimiso izibonelo zalokho, ifakwe izinqubo egcinwe, trigger kanye nezinye izindlela isampula besiyoba sikhulu Imininingwane zingubudlelwane amathrekhi. Ukubukeka kwamakhasi ejwayelekile inguquko akahambanga, kodwa kwaba ngendlela ewusizo futhi elula ukuthola bese ushintsha ulwazi. Ngokwesibonelo, izinkulumo njalo-JavaScript imeyili kakhulu lula ukubhalisa izivakashi, musa ukulayisha iwebhusayithi ukuthumela imilayezo amakheli nhlobo.

Ukusho ukuthi i-JavaScript ejwayelekile kungcono kakhulu produmannnyh ukulandelanisa indexOf () ubiza e isimo eyindilinga ezivamile futhi opharetha, abakwazi kodwa bathi lenzé ikhodi iskripthi icwecwe, kodwa kancane aqondwa le engaqaliwe, kungaba nangokunembile.

RegExp = + ithempulethi injini

Izengezo ezivamile - kuyinto injini isifanekiso +. Eyokuqala empeleni kuyinto ejwayelekile - JavaScript - the regexp, kwesibili - le umenzi isifanekiso, silisebenzise kulowo mugqa. Izinjini ukuthi liqalise izinkulumo njalo ngayinye ulimi lokwakha zihlukile. Futhi nakuba kungebona bonke umehluko zinkulu, kufanele kukhunjulwe kanye qinisekisa ukubheka ngokucophelela ejwayelekile ngaphambi ukusebenza kwawo.

A notation ekhethekile lapho ebhalela izinkulumo njalo kulula kakhulu ukusebenzisa futhi ngempumelelo ngempela, kodwa kudinga ukunakekelwa, nokuhlanzeka kanye nesineke unjiniyela. Ngu notation amaphethini ejwayelekile kudingeka ukujwayela. Lokhu akuyona into yesikhashana, kuba nala ezosetshenziswa ekusebenziseni «-JavaScript izinkulumo njalo."

ejwayelekile iphethini

Ivunyelwe ezimbili okufanele akhethe kuzo:

var expOne = / abc * / i;

var expTwo = regexp ( "abc *", "i");

Ngokuvamile kusetshenziswa indlela yokuqala. Esimeni sesibili, izingcaphuno, ngoba ukusebenzisa uhlamvu '\', kumelwe ukuthi yeqiwe nge imithetho jikelele.

'Mina' - flag ekhombisa "Uma kwenzeka bangakhathaleli muntu". Ungasebenzisa futhi amafulegi 'g' - «Ukucinga Global 'futhi' m '- usesho multi-line.

Uphawu '/' ukuze ubonise ezivamile usebenzise isifanekiso.

Isiqalo ekupheleni ejwayelekile

I '^' ichaza uhlamvu (s) kusuka lapho ukuqala ejwayelekile, kanye '$' ubheka ukuthi yiziphi uhlamvu (s) kumele ekupheleni. Akufanele uzihlole ngaphakathi isisho, lapho babe incazelo ehlukile.

Ngokwesibonelo,

var eRegExp = regexp entsha (cRegExp, 'i');

var cRegRes = '';

var sTest = 'AbcZ';

uma (eRegExp.test (sTest)) {

cRegRes + = '- Yebo';

} Else {

cRegRes + = '- Cha';

}

var dTestLine = document.getElementById ( 'scTestLine');

dTestLine.innerHTML = 'Expression /' + cRegExp + '/ wemigqa "' + sTest + '"' + cRegRes.

Isici 'scTestLine' kuyoholela (cRegExp variable kunencazelo efanayo):

Inkulumo / ^ AbcZ $ / ngenxa yezinhlamvu "abcz" - Yebo

Uma ususa 'i' ifulege, umphumela uba:

Inkulumo / ^ AbcZ $ / ngenxa yezinhlamvu "abcz" - Cha

Okuqukethwe inkulumo ejwayelekile

Inkulumo ejwayelekile ekulandelaneni izinhlamvu, okuyinto isihloko yokusesha. Isengezo / qwerty / ngifuna ukungena lo ukulandelana:

Inkulumo / qwerty / I-string "qwerty" - Yebo

Inkulumo / qwerty / I-string "123qwerty456" - Yebo

I '^' izinguquko aveza:

Inkulumo / ^ qwerty / I-string "123qwerty456" - Cha

Inkulumo / ^ qwerty / I-string "qwerty456" - Yebo

Ngokufanayo, i-ekupheleni umugqa uphawu. Izengezo ezivamile uvumele ukungaguquguquki: isibonelo, [az], [AZ], [0-9] - zonke izinhlamvu zamagama kuleli cala noma izibalo. futhi izincwadi Russian lingasetshenziswa, kodwa kufanele sinake ukufaka ikhodi strings (okuyinto wafuna ukuthi kwelashwe) kanye namakhasi. Ngokuvamile izincwadi Russian, kanye nezinhlamvu ezikhethekile, Kungcono setha amakhodi.

Lapho ukwakha ejwayelekile ungacacisa izinketho ngoba khona izimpawu ezithile endaweni ethile, nenombolo ababeyinikwe kanje: '*' = 0 ukuphindaphinda noma izikhathi ezingaphezu; '+' = 1 noma ngaphezulu izikhathi ukuphindaphinda; {1} kuyafana, njengoba '+'; {N} = ukuphindaphinda ncamashi n izikhathi; {N,} = n ukuphindaphinda izikhathi noma ngaphezulu; {N, m} = ukuphindaphindwa n izikhathi m.

Ukusebenzisa kubakaki, ungacacisa umlingisi setha ongakhetha. Kubonakala sengathi lokhu. [Abcd] = [isikhangiso] = zonke uphawu amane: 'a', 'b', 'c' noma 'd'. Ungaveza ngenye indlela. Noma yimuphi uhlamvu ngaphandle kwalawo esethini: [^ ABCD] = yimuphi uhlamvu ngaphandle 'a', 'b', 'c' noma 'd'. '?' Ikhombisa ukuthi kuleli qophelo uphawu akukwazi. '.' icacisa yimuphi uhlamvu ngaphandle ebonisa omusha. Lokhu '\ n', '\ r', '\ u2028' noma '\ u2029'. Inkulumo ethi '\ s * | \ S *' = '[\ s | \ S] *' lisho ukuthi ukufunwa yimuphi uhlamvu, kuhlanganise imigqa emisha.

izinguqulo Esenziwe Lula yokukhuluma njalo

Inkulumo ethi '[\ s | \ S] *' - sesha isikhala, noma itlhogeko, okungukuthi konke emgqeni. Kulokhu, uphawu '\ s' kubonisa isikhala, futhi '\ S' - uma yena engekho.

Ngokufanayo, ungakwazi ukusebenzisa '\ d' ukucinga amadijithi idesimali, futhi '\ D' ukuthola Lwezinhlelo ze-non-ezinombolo. Notation '\ f', 'r' futhi '\ n' sihambisana ifomu-feed, ukuthutha ukubuya futhi umugqa-feed.

Uhlamvu ithebhu - '\ t', mpo - '\ v'. Igama elithi '\ w' ithola yimuphi uhlamvu zesiLatini (nezinhlamvu, amadijithi, kanye kugcizelelani uphawu) = [A-Za-z0-9_].

Igama elithi '\ W' okulingana [^ A-Za-z0-9_]. Lokhu kusho noma yimuphi uhlamvu ukuthi akuyona incwadi zamagama, inombolo, noma '_'.

Ukucinga uhlamvu '\ 0' = yokusesha NUL izinhlamvu. Ukucinga '\ xHH' noma '\ uHHHH' = Ukucinga ikhodi uhlamvu noma HHHH HH ngokulandelana. H - idijithi hexadecimal.

Indlela okubekwe ngayo ezinconyiwe kanye esephepheni yokukhuluma njalo

Noma yimuphi ejwayelekile kubalulekile ihlolwe ngokucophelela ku izinguqulo ezihlukene imigqa.

Nge isipiliyoni yokudala yephutha ejwayelekile kuyoba ezincane, kodwa nokho kufanele ahlale engqondweni ukuthi ulwazi lwabo imithetho yokubhala izinkulumo njalo hhayi kungaba kuyiqiniso, ikakhulukazi lapho "inkathi ejwayelekile" is esuswa kolunye ulimi eyiswa kolunye.

Ukukhetha phakathi zakudala (inkomba ngqo) futhi inguqulo lula inkulumo ejwayelekile, kungcono uthanda kuqala. Phela, in the zabuna njalo wabonisa ngokucacile ukuthi kokubili wafuna. Uma inkulumo ethi ejwayelekile noma search string izincwadi Russian, kufanele kuholele eyodwa ikhodi yonke imizila kanye nekhasi lapho usebenza thola esine-ikhodi wenza inkulumo ejwayelekile.

Lapho kukhona uhlamvu ukucutshungulwa, alfabhethi-non-Latin, kunengqondo ukucabangela inkomba amakhodi uhlamvu, hhayi izinhlamvu ngokwabo.

Lapho kwetfula ubuchule yokusesha ku-JavaScript ejwayelekile kufanele ihlolwe ngokucophelela. Kubaluleke ngokukhethekile ukulawula wekhodi uhlamvu.

I abakaki in the ejwayelekile

I kubakaki ichaze izinketho wophawu, okufanele kube noma kungase kungabi endaweni ethile, futhi round - ukulandelana ezahlukeneyo. Kodwa lokhu nje ojwayelekile. Kusukela ke akukho okuhlukile, kodwa kukhona ezihlukahlukene izicelo.

var cRegExp = "[az] * (png | jpg | gif).";

var eRegExp = regexp entsha (cRegExp, 'i');

var cRegRes = '';

var sTest = 'picture.jpg';

uma (eRegExp.test (sTest)) {

cRegRes + = '- Yebo';

} Else {

cRegRes + = '- Cha';

}

Imiphumela:

/[az]*.(png|jpg|gif)/ nkulumo for umugqa "picture.jpg" - Yebo

Inkulumo /^[ad][az]*.(png|jpg|gif)/ ngoba "picture.jpg" umugqa - Cha

/^[ad][az]*.(png|jpg|gif)/ nkulumo for umugqa "apicture.jpg" - Yebo

Inkulumo /^[ad][az]*.(png|jpg|gif)/ ngoba "apicture.jg" umugqa - Cha

Kufanele kuqashelwe ukuthi zonke, khona-ke lwenkanyezi Ingase ithanyelwe izikhathi zero. Lokhu kusho ukuthi "isizini njalo" zingase zisebenze ngezindlela ezingalindelekile okungenani.

Hlola regexp - ukuhlola imeyili

Ngezinye njalo-JavaScript Inkulumo etholwe izindlela ezimbili, ukuhlolwa kanye Exec, futhi ingasetshenziswa imigqa izinto (String) izindlela zabo (imisebenzi): search, ukuhlukana, esikhundleni kanye nomdlalo.

test ndlela isivele zibonisile, ikuvumela uhlole ngokunemba we ezivamile. Indlela Umphumela: kweqiniso / zamanga.

Cabangela okulandelayo i-JavaScript izinkulumo njalo. Hlola i-imeyili evela isibalo "nzima, kodwa ngokuqinisekile":

var eRegExp = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s @ "] +) *) | (". + ")) @ ((\ [[0-9] {1.3} \ [0-9] {1.3} \ [0-9] {.. . 1.3} \ [0-9] {1.3}]) | (. ([a-zA-Z \ -0-9] + \) + [a-zA-Z] {2}) ) $ /;

a var string sTest ='SlavaChip@sci.by 'unika kweqiniso-ke kukhona lokhu string is elungile imeyili-kheli. Ucwaningo lwenziwe ngo eRegExp.test (sTest).

ukusetshenziswa esiwusizo: ekwelapheni e-Mail

indlela Exec inikeza afanayo okukhipha, shayela:

var aResult = eRegExp.exec (sTest);

cRegRes = '
' + aResult.length + '
';
ngoba (var i = 0; i cRegRes + = aResult [i] + '
';
}

Inikeza umphumela ezilandelayo:

9
Slava.Chip@sci.by
Slava.Chip
Slava.Chip
.Chip
esingachaziwe
sci.by
esingachaziwe
sci.by
sci.

Ezinye izindlela ukusebenza efanayo. Kunconywa ukuzihlola ngokwakho. Ukuthuthukiswa ukusetshenziswa izinkulumo njalo, kuyinto efiselekayo ukusebenza practice, ukukopisha ikhodi akuyona njalo kuyancomeka lapha.

Popular "inkathi ejwayelekile"

I-JavaScript ejwayelekile inikezwe Email hhayi kuphela lapho abaningi ongakhetha lula ngaphezulu. Ngokwesibonelo, /^[\w-\.]+@[\w-]+\.[az]{2,3}$/i. Nokho, lokhu samuntu uyakucabangela akubona bonke embodiments yerekhodi ikheli le-imeyili.

Yiqiniso, kumelwe ubheke nakho ozakwabo, ukuthi sihlaziye ukuthi ezihlongozwayo yabo phambi ukuklama bebodwa-JavaScript izinkulumo njalo. Kodwa zikhona ezinye ubunzima. Akufanele sibakhohlwe ukuthi i-JavaScript izinkulumo njalo (izibonelo lapho yokukopisha) kungaba okubili izinhlamvu ezibalulekile: '\', '/' noma izingcaphuno. Lokhu kuyoholela ekuthuleni iphutha, okuyinto ungakwazi ukusesha eside.

Kubalulekile ukuba acabangele evamile "ubukhulu womuntu." Ngemva esisemthethweni-JavaScript ejwayelekile ngoba ifoni, okungase kube isivakashi (umuntu), it is inikezwa ngezindlela ezahlukahlukene: 123-45-67, (29) 1234567, 80291234567 noma 375291234567. Futhi konke inombolo efanayo. Emaphethini elupelomagama amaningi akuyona njalo eyamukelekayo, futhi nenkanuko edlulele elukhuni imithetho ngokubhala izinombolo angakha ukungakhululeki ezingadingekile noma imikhawulo. Inketho / ^ \ d [\ d \ (\) \ -] {4,14} \ $ d / i kufanelekile Ezimweni eziningi uhlole inombolo yakho yefoni.

Uma ufuna ukwenza i-JavaScript izinkulumo njalo, amasheke namadijithi kuphela, ngisho icala lelula kudinga ukuba ucacise. Kufanele kubhekwe inenombolo noma ayingxenye, notation ngokwesayensi, noma inombolo ejwayelekile, emihle noma emibi. Ungase futhi acabangele khona uphawu lwemali, inombolo kwamadijithi emva iphuzu zamadesimali kanye division of lonke ingxenye inombolo uziqu-zintathu.

Isengezo / ^ \ d + $ / i hlola izinombolo kuphela ngekukhula /^\d+\.\d+$/i evumela ukusetshenziswa indawo ukuze ukhombise ingxenye wamaqhuzu yenomboro.

Ngo-JavaScript kokuhlola izinkulumo njalo ingasetshenziswa ukuze ukhombise isakhiwo idatha okokufaka kanzima, okuyinto ebaluleke, ikakhulukazi uma ufaka amaphrofayli, idatha iphasipoti, futhi ngokomthetho amakheli t. D.

Hlola izinsuku - ezilula eyinkimbinkimbi

Cabangela esinye i-JavaScript izinkulumo njalo. Izibonelo kuze kube manje, njengoba i-inombolo izinombolo zocingo bamele ukukhetha phakathi rigidity nakalula. Usuku umcimbi - omunye idatha ebalulekile, okuvame ukuba iphathwe. Kodwa ukulungisa okokufaka ngefomethi ethize: "dd-mm-unyaka 'noma' d.m.gg 'ngokuvamile kuholela ikhasimende ukungeneliseki. Inguquko evela endle uvo the kwansuku ngenyanga, egcwele zakudala HTML-ifomu, awukwazi ukuthatha indawo uma ufaka idijithi elilodwa kuphela, futhi kokufaka yesibili kungaba nzima. Ngokwesibonelo, ensimini ka ngosuku ke laqanjwa 3 futhi inani elilandelayo 2 akumiseleli lokuqala, futhi kuthiwa wenziwa wakhe 32, okuyinto Yiqiniso, kuzokwenza ngokuphazamiseka.

Kahle futhi kube lula eboniswa njalo ngokuyisisekelo zincike ukwakhiwa jikelele inkhulumomphendvulwano isivakashi. Kwesinye isenzakalo, ukuba ukhombise usuku kungcono ukusebenzisa inkambu yokufaka yefomu, kulesi esinye kubalulekile ukuhlinzekela Amasimu ahlukahlukene izikhala zosuku, inyanga nonyaka. Kodwa-ke noma yimaphi "izindleko ikhodi" ezengeziwe ukuhlola konyaka eqa, inani izinyanga, inani lezinsuku kuzo.

Ukucinga bese ushintsha, inkumbulo ejwayelekile

I-JavaScript esikhundleni (eboniswa njalo) kusetshenziswa indlela into String, asivumele ukuthola ukubaluleka futhi ushintshe ngokushesha. Lokhu kuyasiza kakhulu nxa elungisa amaphutha okuthayipha, hlela okuqukethwe imikhakha yefomu futhi yokuguqula imininingwane kusuka komunye isethulo format kwesinye.

var cRegExp = / ([a-z] +) \ s ([a-z] +) \ s ([a-z] +) / i; // uma usesha kukhona 'eziguquguqukayo' abathathu

var sTest = 'kulesi sihloko kuhle!';
var cRegRes = sTest.replace (cRegExp, "$ 2 $ 3, $ 1");

var dTestLine = document.getElementById ( 'scTestLine');

dTestLine.innerHTML = 'inkulumo' + cRegExp + 'ngenxa yezinhlamvu "' + sTest + '" ujike:' + cRegRes;

Imiphumela:

Inkulumo / ([az] +) \ s ([az] +) \ s ([az] +) / i umugqa "lesi sihloko kuhle!" ngaphandle: isihloko muhle, lokhu!

Uma wenza pair of abakaki ngamunye lugcine yi ku 'variable' $ n, lapho n - nenani ubakaki ngazimbili ($ 1 $ 2, ...). Ngokungafani ezivamile, lapha izinombolo variable 1, hhayi 0.

izincomo Jikelele

Izengezo ezivamile lula ikhodi, kodwa isikhathi ukuthuthukisa ngokuvamile kwenza umehluko. Ungaqala nge imiklamo elula bese wenza ukuhlanganisa ezilimini ezingaphezu izinkulumo eziyinkimbinkimbi. Ungasebenzisa amasevisi ahlukahlukene inthanethi ukuhlola izinkulumo njalo noma amathuluzi akhethekile akhona.

Inketho engcono kuzodala umtapo yabo eboniswa njalo futhi amathuluzi abo ukuhlola ezintsha. Lena indlela engcono kakhulu ukuqinisa isipiliyoni futhi ufunde indlela ngokushesha ukwakha design ezethembekile futhi ezithokomele.

Ukusebenzisa ukuphindaphinda abalingiswa kanye strings, okungukuthi, nezinhlamvu ezikhethekile '*', '+' futhi besokunxele, kukhombisa isibalo ezinikezwa kufanele aqondiswe izimiso malula futhi bakwazi. Kubalulekile ukuqaphela ukuthi inkulumo njalo ekuqaleni umsebenzi walo, futhi ukuze uthole umphumela ngokuphelele emandleni injini isetshenziswa isiphequluli. Akubona bonke izilimi okulingana-JavaScript. isiphequluli ngamunye angase alethe yabo esikuthandayo e nokuchazwa izinkulumo njalo.

Ukuhambelana akuyona Amakhasi nje nesitayela amashidi, ukuba izinkulumo njalo, libuye libe ukukwenza. Ikhasi isebenzisa i-JavaScript, kungaba ibhekwe kahle kuphela uma uye wasebenza ngempumelelo ezihlukahlukene iziphequluli.

I-JavaScript, String futhi regexp

Ngu umsebenzi kwesokudla ezingeni iklayenti, okungukuthi, kusiphequluli yesivakashi ku-JavaScript, idinga amakhono eliphezulu unjiniyela. Isikhathi eside ngokwanele une ithuba lokususa isiphazamiso esine-ikhodi wesiphequluli izimali zakho noma ngosizo izandiso third-party, ikhodi abahleli, izinhlelo ezimele.

Nokho, akubona bonke izimo, senkinga Ungasingatha futhi basekelwe kuhle unjiniyela, ngokushesha iphutha ukuthola, ukubona netivimba. Izikhathi lapho i-computer iye igxile izibalo, esikhathini eside esadlulako. Manje, ukukhokhela ukunakekelwa okukhethekile ukuze ulwazi kanye umugqa izinto laba bafikile ukubashaya badlala indima ebalulekile. Inani strings steel, futhi ubuntu babo bangempela babonisa ngesikhathi esifanele futhi endaweni efanele kuphela.

Izengezo ezivamile baqinise kungenzeka yemida, kodwa zidinga self nenhlonipho. Lokususa iphutha regexp emsebenzini wakhe, ngisho noma kungenzeka ukuba balingise, umqondo asinantshisekelo kakhulu.

Ukuqonda isakhiwo kanye logic of the RegExp, okusho into String, syntax kanye engasho lutho ka-JavaScript - ikhodi kweqiniso uphephile futhi uvikelekile, ukusebenza esitebeleni kwekhasi ngalinye futhi nesayithi libe iyonke.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 zu.delachieve.com. Theme powered by WordPress.