JavaScriptda RegExlardan Foydalanishni Optimallashtirish
Muntazam ifodalar juda og‘ir va nisbatan sekin ishlovchi narsadir. Muqobil yechim mavjud bo‘lganda, maqsadga muvofiqroq bo‘ladi.
Keling, bir misolni ko‘rib chiqaylik. Faraz qilaylik, biz ma'lum bir satr unday belgi bilan boshlanishini tekshirmoqchimiz. Ba'zi bir dasturchi bu muammoni regulyar orqali hal qilgan:
javascriptlet str = '!123';
if (/^!/.test(str)) {
console.log('+++');
} else {
console.log('---');
}
Biroq, bunday vazifa ancha tezroq ishlovchi yechimga ega:
javascriptlet str = '!123';
if (str[0] == '!') {
console.log('+++');
} else {
console.log('---');
}
Задание 1
Quyidagi kod satrda
'33' pastki qatorining mavjudligini tekshiradi.
Optimallashtirishni bajaring:
javascriptlet str = '123345';
if (/33/.test(str)) {
console.log('+++');
} else {
console.log('---');
}
Задание 2
Quyidagi kod satrning
'.html' bilan tugashini tekshiradi.
Optimallashtirishni bajaring:
javascriptlet str = 'index.html';
if (/\.html$/.test(str)) {
console.log('+++');
} else {
console.log('---');
}
Задание 3
Quyidagi kod oxiridagi boshlıqlarni kesadi. Optimallashtirishni bajaring:
javascriptlet str = ' text ';
let res = str.replace(/^\s+|\s+$/g, '');
console.log(res);