Usuwanie znaków pasujących do wzorca

Clojure:
Usuwanie znaków pasujących do wzorca

How to:

Jak to zrobić:

(defn delete-matching-chars [pattern text]
  (clojure.string/replace text (re-pattern pattern) ""))

;; Przykład użycia:
(let [text "Cześć!## To jest 123 test."]
  (println (delete-matching-chars "[0-9#]" text)))
;; Wynik: "Cześć! To jest  test."

Deep Dive

Wgłębienie:

W Clojure, tak jak w innych językach programowania, teksty możemy przetwarzać wykorzystując wyrażenia regularne (regex). Wyrażenia te istnieją od wczesnych lat ‘50, ale Clojure wykorzystuje Java Regex API, które jest młodsze. Usunięcie znaków pasujących do wzorca jest standardową operacją w przetwarzaniu tekstów, zwłaszcza w analizie danych i skryptach. Alternatywy to między innymi operacje filtrowania sekwencji lub użycie bibliotek zewnętrznych dla specyficznych przypadków. Warte odnotowania jest, że clojure.string/replace potrafi przyjąć re-pattern jako argument, co ułatwia pracę z regexami w Clojure.

See Also

Zobacz również: