Reguláris kifejezések használatának optimalizálása JavaScriptben
A reguláris kifejezések nagyon erőforrásigényes és viszonylag lassan működő dolgok. Amikor van alternatív megoldás, célszerű azt használni.
Nézzünk egy példát. Tegyük fel, hogy ellenőriznünk kell, hogy egy bizonyos sztring felkiáltójellel kezdődik-e. Egy programozó reguláris kifejezéssel oldotta meg a feladatot:
let str = '!123';
if (/^!/.test(str)) {
console.log('+++');
} else {
console.log('---');
}
Ugyanakkor, ez a feladat lényegesen gyorsabban működő megoldással is rendelkezik:
let str = '!123';
if (str[0] == '!') {
console.log('+++');
} else {
console.log('---');
}
A következő kód egy sztringben a
'33' részsztring jelenlétét ellenőrzi.
Végezze el az optimalizálást:
let str = '123345';
if (/33/.test(str)) {
console.log('+++');
} else {
console.log('---');
}
A következő kód ellenőrzi, hogy a sztring
a '.html' részsztringre végződik-e.
Végezze el az optimalizálást:
let str = 'index.html';
if (/\.html$/.test(str)) {
console.log('+++');
} else {
console.log('---');
}
A következő kód levágja a záró szóközöket. Végezze el az optimalizálást:
let str = ' text ';
let res = str.replace(/^\s+|\s+$/g, '');
console.log(res);