Аптымізацыя выкарыстання рэгулярак у JavaScript

Рэгулярныя выразы вельмі цяжкая і адносна павольна працуючая штука. Калі ёсць альтэрнатыўнае рашэнне, жадана карыстацца менавіта ім.

Давайце паглядзім на прыкладзе. Няхай нам трэба праверыць, пачынаецца лі некаторы радок на клічнік. Нейкі праграміст вырашыў гэтую задачу праз рэгулярку:

javascriptlet str = '!123';

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

Аднак, такая задача мае значна хутчэй працуючае рашэнне:

javascriptlet str = '!123';

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

Наступны код правярае наяўнасць у радку падрадка '33'. Выканайце аптымізацыю:

javascriptlet str = '123345';

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

Наступны код правярае, ці сканчаецца радок на '.html'. Выканайце аптымізацыю:

javascriptlet str = 'index.html';

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

Наступны код абрэзвае канцавыя прабелы. Выканайце аптымізацыю:

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