RosettaCodeData/Task/Rep-string/Sidef/rep-string.sidef

16 lines
425 B
Text
Raw Permalink Normal View History

2016-12-05 23:44:36 +01:00
var arr = <1001110011 1110111011
0010010010 1010101010
1111111111 0100101101
0100100 101 11 00 1>;
 
arr.each { |n|
if (var m = /^(.+)\1+(.*$)(?(?{ substr($1, 0, length $2) eq $2 })|(?!))/.match(n)) {
var i = m[0].len;
say (n.substr(0, i),
n.substr(i, i).tr('01', '𝟘𝟙'),
n.substr(i*2));
} else {
say "#{n} (no repeat)";
}
}