需求是这样的,有一段字符串,是把一个 hash 经过简单编码产生的:
~
会被替换成~~
~
连接起来代码形式;
{id: 'P111', nm: '~nm xxx ~~~~ ~id~br~', qt: 10}.map{
|k,v| [k, v.to_s.gsub("~", "~~")].join
}.join("~")
# idP111~nm~~nm xxx ~~~~~~~~ ~~id~~br~~~qt10
问题是如何把idP111~nm~~nm xxx ~~~~~~~~ ~~id~~br~~~qt10
decode 成 {id: 'P111', nm: '~nm xxx ~~~~ ~id~br~', qt: 10}