Clojure:
Uthenting av delstrenger
How to:
Ekstrahering av substringer i Clojure er rett fram. Bruk subs
funksjonen. Her er et eksempel:
(let [tekst "Hei, Norge!"]
(subs tekst 0 3)) ; => "Hei"
(let [tekst "Clojure er kul"]
(subs tekst 8)) ; => "kul"
subs
tar teksten, start- og sluttindeks. Fjern sluttindeks for å ta resten av strengen.
Deep Dive
Substrenger er ikke nytt. De eksisterte i Lisp, Clojure’s stamfar. Clojure, en moderne Lisp-dialekt, håndterer strenger som i Java, siden det kjører på JVM (Java Virtual Machine).
Alternativer? Regulære uttrykk (regex) til komplekse søk, split
for å dele en streng ved et mønster, eller string biblioteker for mer kraft.
Implementasjon? subs
er en wrapper rundt Java’s substring
, rask og effektiv. Men, vær nøye! Feil indekser gir StringIndexOutOfBoundsException
.
See Also
- ClojureDocs (
subs
funksjon): https://clojuredocs.org/clojure.core/subs - JavaDoc (forståelse av
substring
): https://docs.oracle.com/javase/7/docs/api/java/lang/String.html#substring(int,%20int) - Clojure from the ground up (string manipulasjon): https://aphyr.com/posts/305-clojure-from-the-ground-up-strings