Slette tegn som matcher et mønster

JavaScript:
Slette tegn som matcher et mønster

Hvordan gjøre:

// Eksempel: Fjerne alle tall fra en tekststreng
let tekst = 'Oslo1 er 2fantastisk 34 i 2023!';
let rensketTekst = tekst.replace(/\d+/g, '');
console.log(rensketTekst);  // 'Oslo er fantastisk  i !'

// Eksempel: Fjerne spesifikke tegnsett, som vokaler
let setning = 'Hvordan går det med deg?';
let utenVokaler = setning.replace(/[aeiouæøå]/gi, '');
console.log(utenVokaler);  // 'Hvrdn går dt md dg?'

Disse eksemplene bruker String.prototype.replace() metoden sammen med regulære uttrykk (/\d+/g og /[aeiouæøå]/gi) for å slette tegn etter mønster.

Dypdykk

Historisk sett ble manipulering av strenger i JavaScript utfordt med enkle metoder som indexOf() og slice(). Dette hadde sine begrensninger. Introduksjonen av regulære uttrykk ga utviklere et kraftfullt verktøy for komplekse tekstmanipulasjonjobber.

Alternativt kan teknikker som splitting (split()) og gjenforening (join()) benyttes for enklere mønstre:

// Alternativ metode for å fjerne alle tall
let tekst2 = '2023 blir et bra år!';
let tekstUtenTall = tekst2.split('').filter(c => isNaN(c) || c === ' ').join('');
console.log(tekstUtenTall);  // ' blir et bra år!'

Her splitter vi strengen til enkeltegn, filtrerer ut tall, og setter strengen sammen igjen.

En implementeringsdetalj: regulære uttrykk i JavaScript følger ECMAScript-standarder. g-flagget står for global søk og i-flagget for ignorering av store/små bokstaver. Disse flaggene bestemmer hvordan mønstersøket atferd seg.

Se også