14 Søk og erstatt
For å erstatte data i et attributtfelt kan du bruke regexp_replace() -funksjonen i QGIS-feltkalkulatoren. Med denne funksjonen kan du søke etter tekstmønstre i et felt og erstatte dem med ny tekst. Både enkle termer og regulære uttrykk kan brukes til å utføre komplekse erstatninger.
Syntaks:
regexp_replace("Feldname", 'Suchmuster', 'Ersatztext')
"Feltnavn": Attributtfeltet som erstatningen skal utføres i."Søkemønster": Begrepet eller tekstmønsteret du ønsker å erstatte. Dette kan være en enkel tekst eller et regulært uttrykk."Erstatningstekst“: Teksten som skal erstatte termen eller mønsteret som er funnet.
Eksempel:
Hvis du vil erstatte termen Term1 med Term2 i et attributtfelt som heter “Feltnavn”, er uttrykket som følger:
regexp_replace("Feldname", 'Begriff1', 'Begriff2')
I dette eksempelet søker funksjonen etter forekomster av term1 i hver datapost i feltet “Feltnavn” og erstatter dem med term2.
Eksempel på bruksområde:
Anta at attributtfeltet “Feltnavn” inneholder en liste over treslag, og at du ønsker å erstatte alle forekomster av begrepet “eik” med “bøk”. Uttrykket i feltkalkulatoren vil da se slik ut:
regexp_replace("Feldname", 'Eiche', 'Buche')
Etter kjøring blir alle oppføringer som inneholder ordet “oak” automatisk erstattet med “beech”.
Fordeler med regexp_replace():
- Fleksibilitet: I tillegg til enkle termer kan komplekse tekstmønstre også defineres ved hjelp av regulære uttrykk for å fange opp spesifikke eller gjentagende mønstre.
- Presisjon: Ved å bruke regulære uttrykk kan du sikre at bare de ønskede forekomstene blir erstattet.
- Automatisering: Funksjonen kan brukes for alle dataposter i et attributtfelt samtidig, noe som gjør manuelle justeringer unødvendige.
Merk:
Hvis du bare ønsker å erstatte enkle termer uten å bruke regulære uttrykk, kan du også bruke replace() -funksjonen, som er enklere i slike tilfeller. Uttrykket vil da se slik ut:
replace("Feldname", 'Begriff1', 'Begriff2')
Funksjonen regexp_replace() gir imidlertid flere muligheter, ettersom den gjenkjenner og endrer mønstre og komplekse tekststrukturer.
