Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3792831
  • 博文数量: 93
  • 博客积分: 3189
  • 博客等级: 中校
  • 技术积分: 4231
  • 用 户 组: 普通用户
  • 注册时间: 2009-02-02 13:29
个人简介

出没于杭州和青岛的程序猿一枚,对内核略懂一二

文章分类

全部博文(93)

文章存档

2016年(2)

2015年(3)

2014年(11)

2013年(29)

2012年(16)

2011年(5)

2010年(5)

2009年(22)

分类:

2009-04-20 17:25:34

给大家贴一个,自己刚写的一个对%u+urlcode(unicodebi)格式的编码转换代码。
例如:原句为src="人abcdef人人"的编码为dst="%u4EBAabcdef%u4EBA%u4EBA",其中“人”的unicode编码是"4EBA"。
下面的代码将dst重新转换为src(src中的汉字实行gb2312编码)
 
require 'cgi'
require 'iconv'
a="%u4EBAabcdef%u4EBA%u4EBA"
c=""
b=a.split('%u')
i=0
b.each do |now|
 puts now
 i+=1
 (now=CGI.unescape(now);c+=now;next) if(i==1)
 p=now
 test1=p[0,4]
 test=now[0,4]
 test.insert(0,'%')
 test.insert(3,'%')
 test=CGI.unescape(test)
 test=Iconv.conv("gb2312","unicodebig",test)
 now.sub!(test1,test)
 c+=now
end
puts c
阅读(10163) | 评论(2) | 转发(0) |
给主人留下些什么吧!~~

beslow2018-12-28 14:14:42

评论还自动转义,蛋疼。。。。

beslow2018-12-28 14:12:15

str = \"%u674e\"
str = str.gsub(\"%\", \"\\\\\")
puts JSON.parse(\"{\\\"a\\\": \\\"#{str}\\\"}\")[\'a\']

输出结果: