Clojure: le espressioni regolari sostituiscono per prime

sostituire prima

La funzione di sostituzione viene utilizzata per sostituire una sottostringa in una stringa con un nuovo valore di stringa, ma solo per la prima occorrenza della sottostringa. La ricerca della sottostringa viene eseguita utilizzando un pattern.

Sintassi

Di seguito è riportata la sintassi.

(replace-first str pat replacestr)

Parameters- "pat" è il pattern regex. 'str' è la stringa in cui è necessario trovare un testo in base al modello. 'replacestr' è la stringa che deve essere sostituita nella stringa originale in base al modello.

Return Value - La nuova stringa in cui la sostituzione della sottostringa viene eseguita tramite il pattern regex, ma solo con la prima occorrenza.

Esempio

Di seguito è riportato un esempio di sostituzione prima in Clojure.

(ns clojure.examples.example
   (:gen-class))

;; This program displays Hello World
(defn Example []
   (def pat (re-pattern "\\d+"))
   (def newstr1 (clojure.string/replace "abc123de123" pat "789"))
   (def newstr2 (clojure.string/replace-first "abc123de123" pat "789"))
   (println newstr1)
   (println newstr2))
(Example)

L'esempio sopra mostra la differenza tra la funzione sostituisci e sostituisci prima.

Produzione

Il programma precedente produce il seguente output.

abc789de789
abc789de123