Optimalisatie van het gebruik van reguliere expressies in JavaScript
Reguliere expressies zijn een zeer zware en relatief langzaam werkend iets. Wanneer er een alternatieve oplossing is, is het wenselijk om deze te gebruiken.
Laten we een voorbeeld bekijken. Stel dat we moeten controleren of een bepaalde string begint met een uitroepteken. Een programmeur heeft deze taak opgelost met een reguliere expressie:
javascriptlet str = '!123';
if (/^!/.test(str)) {
console.log('+++');
} else {
console.log('---');
}
Echter, zo'n taak heeft een veel sneller werkende oplossing:
javascriptlet str = '!123';
if (str[0] == '!') {
console.log('+++');
} else {
console.log('---');
}
Задание 1
De volgende code controleert op de aanwezigheid in de string
van de substring '33'.
Voer optimalisatie uit:
javascriptlet str = '123345';
if (/33/.test(str)) {
console.log('+++');
} else {
console.log('---');
}
Задание 2
De volgende code controleert of de string
eindigt op '.html'.
Voer optimalisatie uit:
javascriptlet str = 'index.html';
if (/\.html$/.test(str)) {
console.log('+++');
} else {
console.log('---');
}
Задание 3
De volgende code verwijdert trailing spaties. Voer optimalisatie uit:
javascriptlet str = ' text ';
let res = str.replace(/^\s+|\s+$/g, '');
console.log(res);