Rendszeres kifejezések JavaScript-ben Útmutató a rendes kifejezésekhez

Tartalomjegyzék:

Anonim

Bevezetés a szabályos kifejezésekhez a JavaScript-ben

A szabályos kifejezések olyan karakterláncok, amelyeket egy másik karakterlánc tartalmának érvényesítésére használnak. Ezeket a karakterláncokat, amelyek a reguláris kifejezést képezik, egy objektumban tárolják.

Szintaxis

var regEx = /^(A-Za-z)/;

Itt a „regEx” elnevezésű változó objektum a reguláris kifejezési mintát tartja. Most teszteljük, hogy egy másik karakterlánc megegyezik-e ezzel a reguláris kifejezéssel.

Kód

var str = "EduCBA";
var regEx = /^(A-Za-z)/;
var res = "false";
if(str.match(regEx))(
res= "true";
)
alert(res);

Kimenet:

igaz

A fenti példában a reguláris kifejezés ellenőrzi, hogy a karakterlánc csak A – Z ábécét tartalmaz-e, mind a felső, mind az alsó részben. Ha igen, akkor „igaz”, ha nem „hamis” értéket ad vissza.

Rendszeres kifejezés szintaxisa JavaScript-ben

A reguláris kifejezés két részből áll. Az első rész a minta, amelyet választható zászló követ.

Szintaxis

var regEx = /pattern/flag

A zászlókat módosítóknak is nevezik. Kevés általánosan használt opcionális zászló van

  • g - globális

Több találatot talál. Ha nem használják, akkor az első mérkőzés után megáll.

Kód

var str = "I scream, you scream, we all scream for ice cream";
var regEx = / scream/g;
var result = str.match(regEx);
alert( result );

Kimenet:

sikoly, sikoly, sikoly // Visszatér a karakterláncban található összes találathoz.

  • i - figyelmen kívül hagyó eset

Ez a kis- és nagybetű nem érzékeny, és megegyezik a nagy- és az alsó betűkkel. Ha nincs beállítva, akkor a keresés kis- és nagybetűk között érzékeny.

Kód

var str = "Hello EduCBA";
var regEx = /educba/i;
alert( str.search(regEx) );

Kimenet:

6 // visszaadja azt az indexet, amelyen a karakterlánc megtalálható.

riasztás (str.search (/ eduba /)); // globális zászló nélkül

Kimenet:

-1

  • m - több sor

Befolyásolja a „^” és „$” karakterek viselkedését. Több sor esetén a sorok elején és végén található egyezéseket keresi, nem pedig a teljes karakterlánchoz. Ha nem több soros módban van, akkor csak a teljes karakterlánc egyezései kerülnek visszaadásra.

Kód

var str = `I scream,
you scream,
we all scream for ice cream`;
var regEx = /^\w+/gm;
var result = str.match(regEx);
alert( result );

Kimenet:

Én, te, mi // minden sor első szót kinyomtatjuk.

Vessünk egy pillantást a reguláris kifejezés mintáira. A minta sorokat, metakaraktereket, számszerűsítőket stb. Tartalmaz

Rendszeres kifejezések mecharakterjei a JavaScript-ben

A metakarakterek képezik a reguláris kifejezés mintájának alapját. Ezek a hátrányos perjel kombinációja ábécé karakterrel, amelyek együttesen metakaraktert képeznek, és mindegyiküknek különleges jelentése van. Például az „\ n” egy új sort jelöl. A metakarakterek néhány további példája.

  1. \ t - egy tab karakter megkeresésére szolgál.
  2. \ v - függőleges lapkarakter keresésére szolgál.
  3. \ s - szóköz karakterek keresésére szolgál.
  4. \ S - nem szóköz karakterek keresésére szolgál.
  5. \ d - numerikus számjegyek keresésére szolgál.
  6. \ D - nun-számjegyek keresésére szolgál.
  7. \ w - szavak keresésére szolgál.
  8. \ W - a szavak kivételével bármit megkeres.
  9. . - egy ponttal egy karakter megtalálható, kivéve az új sort vagy a sor végét.
  10. \ 0 - null karakter megtalálására szolgál.

A reguláris kifejezések halmazai és tartományai a JavaScript-ben

Ebben a forgatókönyvben szögletes zárójelet használnak részeként

Szintaxis

Say, for the set (abc) – only the characters a, b and c are to be considered.

1. példa

  1. (abc) - ez az abc-tól eltérő karakter.
  2. (a | b) - Az a vagy a b is figyelembe vehető.

A tartományok esetében egy tartományt kell biztosítani az adott tartomány között, az összes karaktert figyelembe kell venni. Például: (az): az a és z közötti összes karakter, kisbetűkkel.

2. példa

  1. (0-9) - minden karakter nullától kilencig.
  2. (AZ) - minden karakter A-tól Z-ig nagybetűkkel.

A reguláris kifejezések mennyiségi meghatározói a JavaScript-ben

Ezeket speciális karakterekkel jelöljük. Minden speciális karakternek van jelentése ehhez társítva. Ezeket a karaktereket a reguláris kifejezésekkel együtt használjuk. A leggyakrabban használt számszerűsítők közül néhány a következő:

  1. * - Egyezik egy karakterlánccal, amely nulla vagy több példányt tartalmaz.
  2. + - Egy vagy több példányt tartalmazó karakterláncra illeszkedik.
  3. ? - Egyezik egy nullát vagy egy példányt tartalmazó karakterlánccal.
  4. (n) - Itt az „n” számot vesz be. Megfelel a kívánt reguláris kifejezésnek az „n” helyett említett számú alkalommal.
  5. $ - egyezi a megadott kifejezést a karakterlánc végével.
  6. - Megfelel a megadott kifejezésnek a karakterlánc elejével.
  7. ? = - Bármely karakterlánc illeszkedik a regex mintázathoz az egyenlőségjel után.
  8. ?! - Megfelel minden olyan karakterlánchoz, amely nem tartalmaz a regex mintát a felkiáltójel után.

A reguláris kifejezések tulajdonságai a JavaScript-ben

A következő tulajdonságokból áll:

  1. Konstruktorok - Meghatározza, hogy melyik függvény hozta létre a reguláris kifejezés objektum prototípusát.
  2. Globális - Ellenőrzi, hogy a „g” jelző be van-e állítva.
  3. Ignore case - Ellenőrzi, hogy be van-e állítva az „i” jelző.
  4. Az utolsó index - meghatározza az index pozícióját, amelytől a következő mérkőzésnek meg kell kezdődnie.
  5. Többvonalas - Ellenőrzi, hogy be van-e állítva az „m” jelző.
  6. Forrás - megadja a reguláris kifejezési mintázat szövegét.

Módszerek szabályos kifejezésekben és karakterláncokban

A szabályos kifejezésekben általánosan használt módszerek

  1. exec () - Végrehajtja egyezés keresését egy karakterláncban, és visszatér az első egyezés. Ha nem található egyezés, akkor null értéket ad vissza.
  2. test () - Egy karakterláncban szereplő mérkőzések tesztelése, és az eredmény logikai formában adódik vissza. Vagyis ha egyezés található, akkor az igaz, ha nem, akkor hamisat ad vissza.
  3. toString () - Visszaadja a reguláris kifejezés ekvivalens karakterlánc objektumát.

Karakterlánc-módszerek, amelyek hasznosak a reguláris kifejezések használatakor

  1. match () - Ez egy karakterlánc módszer, amely egyezésre keres egy karakterláncban. Ha megtalálja, akkor a mérkőzést adja, ha nem, akkor nullát adja vissza.
  2. matchAll () - Ez egy karakterlánc módszer, amely minden karakterláncot keres egy karakterláncban.
  3. split () - Ez egy karakterlánc módszer, amelyet egy karakterlánc törésére használnak a megadott reguláris kifejezés alapján.
  4. search () - Ez egy karakterlánc módszer, amelyet az adott reguláris kifejezéshez való illesztés keresésére használnak. 0 eredményt ad eredményként és -1 sikertelenség esetén.

Következtetés

Rendszeres kifejezések írhatók úgy, hogy szükség esetén különféle metakarakterek, mennyiségi meghatározók és jelzők kombinációit használják. Saját módszereikkel is jönnek, és jól működnek a gyakran használt karakterlánc-módszerekkel is. Ezeket könnyen felhasználhatnánk érvényesítésre vagy a tartalom korlátozására az egyéni igények szerint.

Ajánlott cikkek

Ez egy útmutató a rendes kifejezésekhez JavaScript-ben. Itt tárgyaltuk a szintaxist a normál kifejezésekhez JavaScript-ben, metakaraktereket, halmazokat és tartományokat, mennyiségi mutatókat, tulajdonságokat, módszereket a kimenetekkel. Megnézheti az adott cikkeket is, hogy többet megtudjon-

  1. Hogyan működik a JavaScript?
  2. Mi a JavaScript?
  3. Hogyan kell telepíteni a JavaScriptet
  4. Bevezetés a JavaScript-be
  5. Regex funkciók a Pythonban (példa)