a = 'some string'
b = URI.encode(a) # returns 'some%20string'
c = URI.encode(b) # returns 'some%2520string'
Есть ли способ в рубине, с помощью которого я могу декодировать 'c', что приведет меня к строке 'a' без декодирования дважды. Я хочу сказать, что у меня есть строка, которая дважды закодирована, а другая - одна. Я хочу, чтобы метод автоматически декодировал нормальную строку, автоматически определяя количество декодированных времени.автоматически декодировать URI по мере необходимости
вы можете попробовать '' URI.escape' и URI.unescape' http://www.ruby-doc.org/stdlib-1.9.3/libdoc/uri/rdoc/URI/ Escape.html –
URI.unescape только unescapes один раз. Я хочу unescape столько времени, сколько было закодировано. – shankardevy
Вы не можете определить это автоматически. – Stefan