Jump to content

Run-length encoding: Difference between revisions

(Updated D Short Functional Version)
Line 2,556:
output <- "12W1B12W3B24W1B14W"
inverserunlengthencoding(output)</lang>
 
=={{header|Racket}}==
 
<lang Racket>
#lang racket
 
(define (encode str)
(regexp-replace* #px"(.)\\1*" str
(λ (m c) (~a (string-length m) c))))
 
(define (decode str)
(regexp-replace* #px"([0-9]+)(.)" str
(λ (m n c) (make-string (string->number n)
(string-ref c 0)))))
</lang>
 
=={{header|REXX}}==
Cookies help us deliver our services. By using our services, you agree to our use of cookies.