我想在Ruby中编码一个字符串,使输出成对,以便我可以解码它.我想以这样的方式编码:每对包含字符串中的下一个不同的字母,并且连续重复的数字.
例如,如果我编码"aaabbcbbaaa"输出应该[["a",3],["b",2],["c",1],["b",2],["a",3]]
这是代码.
def encode( s )
b = 0
e = s.length - 1
ret = []
while ( s <= e )
m = s.match( /(\w)\1*/ )
l = m[0][0]
n = m[0].length
ret << [l, n]
end
ret
end
Run Code Online (Sandbox Code Playgroud) ruby ×1