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:

javascriptlet str = '!123';

if (/^!/.test(str)) {
  console.log('+++');
} else {
  console.log('---');
}

Ugyanakkor, ez a feladat lényegesen gyorsabban működő megoldással is rendelkezik:

javascriptlet str = '!123';

if (str[0] == '!') {
  console.log('+++');
} else {
  console.log('---');
}
Задание 1

A következő kód egy sztringben a '33' részsztring jelenlétét ellenőrzi. Végezze el az optimalizálást:

javascriptlet str = '123345';

if (/33/.test(str)) {
  console.log('+++');
} else {
  console.log('---');
}
Задание 2

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:

javascriptlet str = 'index.html';

if (/\.html$/.test(str)) {
  console.log('+++');
} else {
  console.log('---');
}
Задание 3

A következő kód levágja a záró szóközöket. Végezze el az optimalizálást:

javascriptlet str = '  text  ';
let res = str.replace(/^\s+|\s+$/g, '');
console.log(res);