Brace expansion using ranges: Difference between revisions
Content added Content deleted
Line 870: | Line 870: | ||
=={{header|Julia}}== |
=={{header|Julia}}== |
||
Julia currently does not handle certain trigraphs in strings correctly, such as 🌶, so that test is omitted. |
Julia currently does not handle certain trigraphs in strings correctly, such as 🌶, so that test is omitted. |
||
<lang julia> |
<lang julia>padzeros(str) = (len = length(str)) > 1 && str[1] == '0' ? len : 0 |
||
function ranged(str) |
function ranged(str) |
||
Line 880: | Line 880: | ||
if '0' <= rang[1][1] <= '9' || rang[1][1] == '-' |
if '0' <= rang[1][1] <= '9' || rang[1][1] == '-' |
||
x, y = parse(Int, rang[1]), parse(Int, rang[2]) |
x, y = parse(Int, rang[1]), parse(Int, rang[2]) |
||
pad = max( |
pad = max(padzeros(rang[1]), padzeros(rang[2])) |
||
return [string(x, pad=pad) for x in range(x, step=(x < y) ? delta : -delta, stop=y)] |
return [string(x, pad=pad) for x in range(x, step=(x < y) ? delta : -delta, stop=y)] |
||
else |
else |