RosettaCodeData/Task/Run-length-encoding/Sidef/run-length-encoding-1.sidef

8 lines
139 B
Plaintext

func encode(str) {
str.gsub(/((.)(\2*))/, {|a,b| "#{a.len}#{b}" });
}
func decode(str) {
str.gsub(/(\d+)(.)/, {|a,b| b * a.to_i });
}