Rails 请教后台接受到这种字符%u5468%u8787%u9J99 该怎么处理

evan · 2012年11月01日 · 最后由 cisolarix 回复于 2014年01月04日 · 3544 次阅读

想去数据库里 find 但是查不到,不是中文

anybody? 这个也是 utf8 吧。。

"%u5468%u8787%u9J99".gsub(/%u([\da-fA-F]{4})/) {|m| [$1].pack("H*").unpack("n*").pack("U*")}

但是只有第一个字能出来,后面的编码对么?怎么会有"J"?

后面的编码可能不对,复制你的第一个字也出不来。。

"%u4E2D%u56FD".gsub(/%u([\da-fA-F]{4})/) {|m| [$1].pack("H").unpack("n").pack("U*")}

can't convert nil into Integer

这个可以: 1.9.3p125 :054 > "%u4E2D%u56FD".gsub(/%u([\da-fA-F]{4})/) {|m| [$1].pack("H4").unpack("n").pack("U*")} => "中国"

@yangyanhao 非常感谢!

楼上几个没有头像的聊得好 high 啊。

需要 登录 后方可回复, 如果你还没有账号请 注册新账号