A JavaScript String match () metódus visszaadja a karakterlánc szabályos kifejezéssel való összehangolásának eredményét.
A match()
módszer szintaxisa :
str.match(regexp)
Itt az str egy karakterlánc.
match () Paraméterek
A match()
módszer:
- regexp - reguláris kifejezés objektum (az argumentum implicit módon konvertálódik,
RegExp
ha nemRegExp
objektumról van szó)
Megjegyzés: Ha nem ad meg paramétereket, akkor match()
visszatér ("")
.
Visszatérési érték egyezésből ()
- Visszaadja
Array
a találatokat tartalmazó elemeket, minden mérkőzéshez egy elemet. - Visszatér,
null
ha nem található egyezés.
1. példa: A match () használata
const string = "I am learning JavaScript not Java."; const re = /Java/; let result = string.match(re); console.log("Result of matching /Java/ :"); console.log(result); const re1 = /Java/g; let result1 = string.match(re1); console.log("Result of matching /Java/ with g flag:") console.log(result1);
Kimenet
A / Java /: ('Java', index: 14, input: 'JavaScriptet nem Java-t tanulok.', Csoportok: undefined) egyezés eredménye )
Itt láthatjuk, hogy a g
zászló használata nélkül csak az első mérkőzést kapjuk eredményül, de olyan részletes információkkal, mint az index, a bevitel és a csoportok.
Megjegyzés : Ha a reguláris kifejezés nem tartalmazza a g
zászlót, str.match()
akkor csak az első hasonló eredményt adja vissza RegExp.exec()
. A visszaküldött termék a következő további tulajdonságokkal is rendelkezik:
groups
- Megnevezett elfogási csoportok objektuma, amelynek kulcsai a nevek és az értékek, mivel a rögzített egyeznek.index
- A keresés indexe, ahol az eredmény megtalálható.input
- A keresési karakterlánc másolata.
2. példa: A szakaszok egyezése a karakterláncban
const string = "My name is Albert. YOUR NAME is Soyuj."; // expression matches case-insensitive "name is"+ any alphabets till period (.) const re = /namesiss(a-zA-Z)+./gi; let result = string.match(re); console.log(result); // ( 'name is Albert.', 'NAME is Soyuj.' ) // using named capturing groups const re1 = /namesiss(?(a-zA-Z)+)./i; let found = string.match(re1); console.log(found.groups); // (name: "Albert")
Kimenet
('név Albert.', 'NÉV Soyuj.') (név: 'Albert')
Itt egy szabályos kifejezést használtunk a karakterlánc egy bizonyos részének illesztésére. A mérkőzés egyes csoportjait is megragadhatjuk a szintaxis segítségével, a fentiek szerint.
Ajánlott olvasmány: JavaScript karakterlánc matchAll ()