Clojure:
Slette tegn som matcher et mønster
Hvordan gjøre det:
For å slette tegn som matcher et mønster i Clojure, kan du bruke clojure.string/replace
funksjonen med et regulært uttrykk.
(require '[clojure.string :as str])
; Eksempel: Fjerne alle vokaler fra en streng
(defn delete-vowels [s]
(str/replace s "[aeiouAEIOU]" ""))
; Bruk
(delete-vowels "Hei Verden") ; => "H Vrdn"
; Eksempel: Fjerne alle tall fra en streng
(defn delete-digits [s]
(str/replace s "\\d+" ""))
; Bruk
(delete-digits "Clojure 2023") ; => "Clojure "
; Eksempel: Fjerne spesialtegn, unntatt mellomrom
(defn delete-special-chars [s]
(str/replace s "[^a-zA-Z0-9 ]" ""))
; Bruk
(delete-special-chars "Hello, Verden!") ; => "Hello Verden"
Dykk dypere
I eldre dager var tekstmanipulasjon kronglete. Med moderne programmeringsspråk som Clojure er det enkelt. clojure.string/replace
er en kraftig funksjon som bruker Java’s Pattern
klasse under hetten for effektivitet. Alternativer inkluderer manuell iterasjon over strenger eller bruk av biblioteker som clojure.spec
for mer kompleks validering og transformasjon.
Regulære uttrykk, som vi bruker her, er kompakte, men kan være kryptiske. Viktig: de matcher mønstre, ikke spesifikke tegn. Å forstå dem krever praksis.