SzámítógépekProgramozás

Javascript, reguláris kifejezés példák, ellenőrizze Regular Expression

Eljövetele előtt hipertext nyelvet, hanem, amíg világossá vált, hogy ne csak nézd, de ehhez bizonyos körülmények között, egy adott helyen, a megváltozott adatokat a megfelelő mennyiségben, a szokásos keresés és csere funkció szervezett bármely bonyolult programozó. Készítsen remekei művészeti keresésének programozási nyelvek és adatbázis kitűnt formák mintavételi körülmények felszerelt tárolt eljárások, triggerek és egyéb eszközök nagyméretű minta relációs adatok számokat. A megjelenése a reguláris kifejezés a forradalom nem vezet, de ez egy hasznos és kényelmes módja, hogy megtalálják, és cserélje ki információt. Például a reguláris kifejezések JavaScript email jelentősen egyszerűbbé regisztrációs látogatók, ne töltse be a honlapon, hogy üzeneteket küld nem létező címeket.

Ha azt mondjuk, hogy a JavaScript reguláris kifejezés sokkal jobb produmannnyh szekvenciák indexOf () hívások keretén belül a hagyományos ciklikus és az üzemeltetők nem lehet, de azt mondják, hogy tette a script kód kompakt, de kevés érthető az átlagember lehet egyértelműen.

Object RegExp = + sablon motor

A reguláris kifejezések - egy sablon + motor. Az első tulajdonképpen egy szabályos kifejezés - JavaScript objektum - a reguláris kifejezéssel, a második - ez a sablon előadóművész, alkalmazza azt a vonalat. Motorok, hogy hajtsák végre a reguláris kifejezések az egyes programozási nyelv különböző. És bár nem minden különbségek jelentősek, meg kell jegyezni, valamint biztos, hogy alaposan ellenőrizze a reguláris kifejezés előtt annak működését.

Egy speciális jelölési írásakor reguláris kifejezések nagyon könnyen kezelhető és nagyon hatékony, de óvatosságot igényel, tisztaság és a türelem a fejlesztő. By jelölést reguláris kifejezés mintákat kell szokni. Ez nem egy hóbort, ez a logika egy végrehajtási mechanizmusát «JavaScript reguláris kifejezések.”

reguláris kifejezés minta

Megengedett két lehetőség van:

var expOne = / abc * / i;

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

Jellemzően használt az első módszer. A második esetben, az idézőjelek, mert használja a karakter „\” meg kell megszökött az általános szabályokat.

„I” - zászló jelzi, hogy „a kis- és nagybetűket.” Ön is használja flags' g „-« Global Search”és az 'm' - a multi-keresés.

A szimbólum „/” jelzi, a közös, hogy egy sablont.

Az elején és a végén a reguláris kifejezés

A „^” határozza meg a karakter (ek), ahonnan indul a reguláris kifejezés, a „$” határozza meg, melyik karakter (ek) a végén. Nem szabad kísérletezni velük belsejében egy kifejezést, ahol van egy másik jelentése.

Például,

var eRegExp = új RegExp (cRegExp, 'i');

var cRegRes = '';

var mérési idő = 'AbcZ';

ha (eRegExp.test (mérési idő)) {

cRegRes + = '- Igen';

} Else {

cRegRes + = '- Nem';

}

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

dTestLine.innerHTML = 'Expression /' + cRegExp + '/ sorban "' + mérési idő + '"' + cRegRes.

Az elem „scTestLine” eredményez (cRegExp változónak van megfelelő jelentéssel bír):

kifejezés / ^ AbcZ $ / a string "abcz" - igen

Ha eltávolítja az „i” zászló, az eredmény:

kifejezés / ^ AbcZ $ / a string "abcz" - Nem

A tartalmát egy reguláris kifejezés

A reguláris kifejezés olyan karakterek sorozatát, ami a tárgya a keresést. Expression / qwerty / keres bejegyzés ebben a sorrendben:

kifejezés / qwerty / karakterlánc "qwerty" - igen

kifejezés / qwerty / karakterlánc "123qwerty456" - igen

A „^” változások kifejezések:

kifejezés / ^ qwerty / karakterlánc "123qwerty456" - Nem

kifejezés / ^ qwerty / karakterlánc "qwerty456" - igen

Hasonlóképpen, a sor vége jel. A reguláris kifejezések lehetővé teszik összhang: például [az], [AZ], [0-9] - minden az ábécé betűit ebben az esetben vagy számok. Orosz betűket is lehet használni, de kell figyelni, hogy a kódolás húrok (kért, hogy kérik) és oldalakat. Gyakran orosz betűk, valamint a speciális karakterek, célszerű beállítani kódokat.

Amikor képező szabályos kifejezés megadhatja lehetőségek a jelenléte bizonyos szimbólumok egy adott helyen, a számuk esetében a következő: „*” = 0 ismétlés vagy több alkalommal; „+” = 1 vagy több ismétlés alkalommal; {1} ugyanaz, mint a '+'; {N} = ismétlés pontosan n alkalommal; {N,} = n ismétlés-szer vagy több; {N, m} = ismétlése n és m közötti alkalommal.

Zárójelek használatával megadhatja a karakterkészlet lehetőségeket. Úgy néz ki, mint ez. [Abcd] = [ad] = minden négy szimbólum: 'a', 'b', 'c', illetve 'd'. Akkor adja meg másképp. Bármely karakter meghatározottaktól eltérő a készlet: [^ ABCD] = bármely karakter más, mint a „a”, „b”, „c”, illetve „d”. '?' Ez azt jelzi, hogy ezen a ponton a szimbólumot nem lehet. '' megadja, hogy bármely más karakter, mint jelzi az új sor. Ez '\ n', '\ r', '\ u2028' vagy '\ u2029'. A '\ s * | \ S *' = '[\ s | \ S] *' a keresési bármilyen karaktert, beleértve a sorokban.

Egyszerűsített változat a reguláris kifejezés

A „[\ s | \ S] *” - keresési térben, vagy annak hiánya, hogy minden, ami a vonalon. Ebben az esetben a szimbólum „\ s” azt jelzi, hogy a tér, és a „\ S” - távollétében.

Hasonlóképpen, akkor a „\ d” keresni a decimális számjegy, és a „\ D” találni nem numerikus karaktert. Jelölések „\ f”, „r” és „\ n” megfelelnek a lapdobás, kocsi vissza és a vonal-takarmány.

A tabulátorkarakter - '\ t', függőleges - '\ v'. A kijelölés '\ w' megtalálja a latin ábécé karaktert (betűket, számokat és aláhúzás jel) = [A-Za-Z0-9_].

A kijelölés '\ W' jelentése megegyezik az [^ A-Za-Z0-9_]. Ez azt jelenti, minden karakter, amely nem betűvel, a szám vagy „_”.

Keresés karakter „\ 0” = keresés nulla karaktereket. Keresés '\ xHH' vagy '\ uhhhh' = Search karakter kódját vagy HHHH HH ill. H - hexadecimális számjegy.

Ajánlott szövege és kódolása reguláris kifejezés

Bármilyen szabályos kifejezés fontos, hogy gondosan tesztelték különböző változatai sorokban.

A tapasztalat létrehozása reguláris kifejezés hiba kisebb lesz, de ennek ellenére mindig szem előtt kell tartani, hogy a saját tudás a szabályok az írás a reguláris kifejezések nem lehet igaz, különösen, ha az „alapszakaszban” át az egyik nyelvről a másikra.

A választás a klasszikus (pontos megjelölésével), és egy egyszerűsített változata egy reguláris kifejezés, akkor jobb, ha inkább az első. Végtére is, a klasszikus mindig világosan jelzi, hogy mindkét kérik. Ha a reguláris kifejezés vagy a karakterlánc van az orosz betűket kell vezetnie egy kódoló összes vonal és azt az oldalt, amely működik megtalálják a JavaScript-kódot hajt végre egy reguláris kifejezés.

Ha van egy karakter feldolgozás, nem a latin ábécé, érdemes figyelembe venni, jelezve a karakter kódok nem a karakterek maguk.

Végrehajtása során a keresési algoritmusok JavaScript reguláris kifejezés gondosan ellenőrizni kell. Különösen fontos, hogy ellenőrizzék a karakterkódolást.

A zárójelek a reguláris kifejezés

A zárójelben határozza meg a lehetőségeket a szimbólum, amely kell, illetve nem lehet egy bizonyos helyen, és kerek - szekvenciavariánsai. De ez csak egy általános szabály. Belőle nincs kivétel, de van egy széles körben használható.

var cRegExp = "[az] * (PNG | JPG | GIF).";

var eRegExp = új RegExp (cRegExp, 'i');

var cRegRes = '';

var mérési idő = 'kép.jpg';

ha (eRegExp.test (mérési idő)) {

cRegRes + = '- Igen';

} Else {

cRegRes + = '- Nem';

}

találatok:

/[az]*.(png|jpg|gif)/ kifejezés a vonal „kép.jpg” - igen

/^[ad][az]*.(png|jpg|gif)/ kifejezés „kép.jpg” vonal - Nem

/^[ad][az]*.(png|jpg|gif)/ kifejezés a vonal „apicture.jpg” - igen

/^[ad][az]*.(png|jpg|gif)/ kifejezés „apicture.jg” vonal - Nem

Meg kell jegyezni, hogy az összes, akkor egy csillag jelen lehet nulla alkalommal. Ez azt jelenti, hogy a „alapszakaszban” működhetne váratlan módon legalábbis.

Ellenőrizze RegExp - tesztelés email

A JavaScript reguláris kifejezések elő a két módszer, vizsgálati és exec, és fel lehet használni az Object (String) saját módszer (funkciók): a keresés, split, cseréje mérkőzés.

vizsgálati módszer már bizonyított, ez lehetővé teszi, hogy ellenőrizze a helyességét a reguláris kifejezés. Módszer Eredmény: igaz / hamis.

Tekintsük a következő JavaScript reguláris kifejezéseket. Ellenőrizze e-mailt a számos „nehéz, de biztosan”:

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}) ) $ /;

karakterlánc var mérési idő ='SlavaChip@sci.by „ad igaz, akkor van ez a sztring a megfelelő e-mail-címet. Az ellenőrzés által lefolytatott eRegExp.test (mérési idő).

Gyakorlati alkalmazás: kezelése e-mail

Exec módszer biztosítja a kimeneti tömb, hívja:

var aresult = eRegExp.exec (mérési idő);

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

Ez a következő eredményt adja:

9
Slava.Chip@sci.by
Slava.Chip
Slava.Chip
.Chip
meghatározatlan
sci.by
meghatározatlan
sci.by
sci.

Más módszerek hasonlóan működik. Javasoljuk, hogy ellenőrizze őket magad. Fejlesztési és reguláris kifejezések, kívánatos, hogy működik a gyakorlatban, a kód másolása nem mindig tanácsos itt.

Népszerű „alapszakaszban”

JavaScript reguláris kifejezés adott eMail nemcsak sokkal több egyszerű lehetőséget. Például, /^[\w-\.]+@[\w-]+\.[az]{2,3}$/i. Azonban ez a kiviteli figyelembe veszi nem összes kiviteli az e-mail címet rekordot.

Persze, meg kell tekintenünk a tapasztalat a kollégák, hogy megvizsgáljuk, miként a korábban javasolt, hogy kialakítsák saját JavaScript reguláris kifejezéseket. De vannak bizonyos nehézségek. Nem szabad elfelejteni, hogy a JavaScript a reguláris kifejezések (példák másoláskor) lehet előidézni a lényeges karakterek: „\”, „/” vagy idézeteket. Ez vezet a hiba, amit lehet keresni hosszú.

Fontos figyelembe venni a szokásos „emberi dimenzió.” Miután a hivatalos JavaScript reguláris kifejezést a telefon, amely lehet a látogató (fő), ez adott különböző módon: 123-45-67, (29) 1234567, 80291234567 vagy 375.291.234.567. És ez mind ugyanazt a számot. Helyesírási több mintát nem mindig elfogadható, és merev rögzítéssel szabályainak írásban számok szükségtelen kényelmetlenséget vagy korlátozásokat. Option / ^ \ d [\ d \ (\) \ -] {4,14} \ d $ / i alkalmas a legtöbb esetben, hogy ellenőrizze a telefonszámot.

Ha azt szeretnénk, hogy egy JavaScript reguláris kifejezések, csak számjegyek ellenőrzéseket, még egy ilyen egyszerű esetben pontosítást igényel. Figyelembe kell venni, egész szám vagy tört, tudományos jelöléssel, vagy normális, pozitív vagy negatív szám. Azt is figyelembe kell venni, hogy létezik a pénznem szimbólumát, a számjegyek száma a tizedespont után, és a szétválás az egész része a számot a hármas.

Expression / ^ \ d + $ / i megtekintéséhez csak számokból és /^\d+\.\d+$/i kifejezést lehetővé teszi a használatát egy pont jelzi a tört része a számot.

A JavaScript ellenőrzése reguláris kifejezések jelzésére használt formátum a kemény bemenő adatok, ami fontos, különösen, amikor belépnek profilok, útlevél adatait, és jogi címeket t. D.

Ellenőrizze a dátumok - egyszerűtől a bonyolult

Vegyünk egy másik JavaScript reguláris kifejezéseket. Példák a mai napig, mint a telefonszámok darabszáma képviseli közötti választás merevséget és rugalmasságot. Esemény időpontja - az egyik legfontosabb adata, amely gyakran kell beadni. De rögzítéséről input egy bizonyos formában: „dd-hh-nn»vagy«d.m.gg„gyakran vezet az ügyfelek elégedetlenségét. Az átmenet a beviteli mezőbe a napról-hónapra, tele van klasszikus HTML-formában nem kerülhet sor, ha meg csak egy számjegy, a második bemeneti nehéz lehet. Például, a területen a nap akkor vezették be a 3. és a következő szám 2 nem helyettesíti az első, és neki tulajdonított 32, ami természetesen okoz kényelmetlenséget.

Hatékonyság és kényelem a reguláris kifejezések lényegében attól függ az általános építési párbeszédet a látogató. Az egyik esetben jelzi a dátumot célszerű használni egy beviteli mező a forma, a másik esetben van szükség, hogy a különböző területeken a nap, hónap, év. De aztán minden további „költségeit kód”, hogy ellenőrizze a szökőév, a hónapok száma, a napok száma bennük.

Keresés és csere, reguláris kifejezés memória

JavaScript cserélni (reguláris kifejezések) módszerrel a String objektum, és lehetővé teszi számunkra, hogy megtalálja az értéket, és haladéktalanul változtassa meg. Ez hasznos kijavítása a gépelési hibákat, módosítsa a tartalmát az űrlap mezők és adatkonvertálásra egyik előadás formátumból a másikba.

var cRegExp = / ([a-z] +) \ s ([a-z] +) \ s ([a-z] +) / i; // A kereséskor három „változó”

var mérési idő = „ez a cikk jó!”;
var cRegRes = sTest.replace (cRegExp, "$ 2, $ 3, $ 1");

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

dTestLine.innerHTML = 'kifejezés' + cRegExp + 'a string "' + mérési idő + '" kapcsolja:' + cRegRes;

eredmény:

kifejezés / ([az] +) \ s ([az] +) \ s ([az] +) / i a sor "ez a cikk jó!" ki: a cikk jó, ez!

Amikor végző minden pár zárójelben az eredményt eltárolja a „változó” $ n, ahol n - száma tartóelempárok ($ 1, $ 2, ...). Ellentétben a hagyományos, itt változó számozás 1, nem 0.

Általános ajánlások

A reguláris kifejezés egyszerűsíti a kódot, de az idő, hogy dolgozzon ki gyakran tesz különbséget. Kezdheted egyszerű minták, majd arról, hogy egyesíteni bonyolultabb kifejezéseket. Használhatja a különböző online szolgáltatásokat, hogy teszteljék a reguláris kifejezések, vagy a különleges helyi eszközöket.

A legjobb megoldás az lesz, hogy saját könyvtárát a reguláris kifejezések és a saját eszközök az új fejlesztések tesztelése. Ez a legjobb módja annak, hogy megszilárdítsa az élményt, és megtanulják, hogyan kell gyorsan építeni megbízható és kényelmes design.

Segítségével ismétlése karakterek és karakterláncok, azaz speciális karakterek „*”, „+” és merevítők, jelezve az ismétlések számát kell vezérelnie az egyszerűség és a gyorsaság. Fontos felismerni, hogy egy reguláris kifejezés a kezdetektől a munkáját, és hogy az eredmény teljesen a motor teljesítménye által használt böngésző. Nem minden nyelv egyenértékű JavaScript. Minden böngésző hozhatják saját személyes preferenciák értelmezése a reguláris kifejezéseket.

A kompatibilitás nem csak oldalak és a stíluslapok, a reguláris kifejezések, azt is meg kell tennie. Az oldal a JavaScript, lehet tekinteni egy jól működő csak akkor sikeresen dolgozott a különféle böngészők.

JavaScript, szöveg és a regexp

A jobb munkát a kliens szinten, azaz a látogató böngészője JavaScript van szükség, mert nagy tudású a fejlesztő. Elég hosszú ahhoz, lehetősége van arra, hogy debug JavaScript-kód böngésző saját források, vagy a segítségével harmadik fél kiterjesztéseket, kód szerkesztők, önálló programok.

Azonban nem minden esetben a hibakereső képes kezelni, és jó támogatja a fejlesztő, a gyors észlelés, érzékeli szűk. Az idők, amikor a számítógép már összpontosított a számításokat, a távoli múltban. Most, különös figyelmet fordítanak az információs és vonalobjektumokhoz jöttek jelentős szerepet játszanak. A számos acél húrok, és azok valódi természetét úgy nyilvánul csak a megfelelő időben és a megfelelő helyen.

A reguláris kifejezések erősítik a lehetőséget vonalak, de ehhez az önbecsülés. Debug RegExp művében, akkor is, ha lehet szimulálni, nem túl érdekes ötlet.

Struktúrájának megértése és logikája RegExp objektum, ami azt jelenti, String, a szintaktikai és szemantikai JavaScript - egy igazi és biztonságos kódot, a stabil működés minden oldal és az oldal egészét.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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