`
kong1616
  • 浏览: 103231 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

ruby %u开头的unicode编码转换

阅读更多
给大家贴一个,自己刚写的一个对%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
分享到:
评论
1 楼 gypgyp 2011-07-08  
我是需要转换\u开头的直接量,查到了您的解决方案。不过,我参考了下CGI.unescape
的源程序,对您的程序作了精减。以下供您参考

require 'iconv'

str = '\u9AD8a\u9AD8'
str = str.gsub(/\\u([0-9a-fA-F]{4})/n) do
Iconv.conv("gb2312","unicodebig",[$1].pack('H*'))
end

puts str

相关推荐

    字符编码转换 convert unicode to Shift-JIS

    各类编码转换,从unicode 到 Shift-JIS

    Ruby-Ruby库和CLI命令可视化终端中的各种Unicode和ASCII编码

    Ruby标准库中的`String`类包含了处理编码的方法,如`encode`用于编码转换,`force_encoding`用于指定字符串的编码,`chars`和`codepoints`方法则用于遍历字符串中的字符或码点。例如,你可以使用`string.encode('...

    Ruby 与编码

    Ruby 与编码 常见问题 * 乱码的问题 * Ruby 中 Unable to convert "\x89" from ASCII-8BIT to UTF8 *Incompatible character encodings: ASCII- 8BIT and UTF-8

    ruby编码转换

    ### Ruby 1.9 编码转换详解 在Ruby 1.9中,字符串处理方面的改进使得编码转换变得更加直观和高效。本篇文章将详细介绍如何在Ruby 1.9环境中进行编码转换,包括如何查看字符串的编码信息、如何强制更改字符串的编码...

    Ruby-Unicode字符串调试帮助

    2. **码点与图形字符**:Ruby中的`codepoints`方法返回字符串中每个字符的Unicode码点,这是一个整数值。码点并不总是直接对应于屏幕上看到的字符,因为某些码点可能表示组合字符序列。使用`String#chars`或`String#...

    ruby 阳历农历转换类

    在Ruby编程语言中,开发一个阳历农历转换类是一个实用的功能,它可以帮助用户方便地进行日期之间的转换。这个“ruby 阳历农历转换类”很可能是为了满足开发者或普通用户在处理涉及到中国传统文化和节日的日期计算时...

    unicode-name:Ruby 中的 Unicode 字符名称

    Unicode ::名称 返回 Unicode 代码点名称、别名和标签。 Unicode 版本: 13.0.0 (2020 年 3 月) 支持的Ruby:3.0,2.7,2.6,2.5 可能仍然有效的旧Ruby: 2.4 、 2.3 、 2.2 、 2.1 、 2.0 用法 require ...

    unicode-blocks:Ruby 字符串的 Unicode 块

    Unicode::块 每个Unicode字符都属于一个。 这个 gem 返回与给定字符串关联的所有块。 Unicode 版本: 13.0.0 (2020 年 3 月) 支持的Ruby:3.0,2.7,2.6,2.5 可能仍然有效的旧Ruby: 2.4 、 2.3 、 2.2 、 ...

    Ruby-基于Ruby的简单货币转换器

    **Ruby编程语言基础** Ruby是一种面向对象的、动态类型的编程...通过阅读和学习该项目的代码,你可以加深对Ruby编程以及货币转换逻辑的理解。此外,还可以尝试修改和扩展项目,以满足自己的特定需求或增加更多功能。

    Ruby-Money一个Ruby库来处理货币和货币转换

    Ruby-Money库是一个专门为Ruby编程语言设计的强大工具,它专注于处理货币相关的运算和货币转换。这个库被广泛用于需要精确管理货币数据的应用程序,比如电子商务、财务系统或者任何涉及金融交易的项目。在Ruby社区中...

    检测并转换C++、Java、JavaScript、PHP和Ruby中的Zawgyi-One字体编码___下载.zip

    本文将深入探讨如何在C++、Java、JavaScript、PHP和Ruby这五种编程语言中检测并转换Zawgyi-One字体编码到Unicode,以确保跨平台的文本一致性。 1. **C++**: 在C++中,处理字符串通常涉及`std::string`对象。要检测...

    Ruby-从FM网站如获取音频并转换到MP3格式

    这个过程通常包括网络请求、数据解析、音频下载以及音频编码转换。下面将详细介绍这些知识点。 首先,你需要了解如何使用Ruby进行网络请求。这通常通过HTTP库来实现,比如`Net::HTTP`是Ruby标准库中的一个选择,但...

    Ruby-Gimli将标记文件转换为pdf文件的工具

    Ruby-Gimli是一个基于Ruby语言的工具,专用于将标记格式的文件转换成PDF文档。在软件开发中,特别是文档处理领域,这种功能极其重要,因为它允许开发者将内容丰富的标记语言,如HTML、Markdown或其他类似格式,转换...

    Ruby Ruby Ruby Ruby Ruby Ruby

    Ruby Ruby Ruby Ruby Ruby Ruby

    Ruby-QRcode一个用于解析QR码的Ruby库

    Ruby-QRcode库是Ruby编程语言中用于生成和解析QR码的一个强大工具。QR码,全称为Quick Response Code(快速响应码),是一种二维条形码,可以存储各种数据,如文本、URL、联系人信息、日历事件等,并且在手机扫描...

    unicode_utils:Ruby 1.9的Unicode算法

    Unicode Utils-Ruby 1.9的Unicode算法 UnicodeUtils在纯Ruby代码中实现了用于大小写转换,规范化,文本分段等的Unicode算法。安装 使用RubyGems安装: gem install unicode_utils或者从Github获取源代码: 并按照...

    Ruby-Kramdown一种快速纯Ruby的markdown超集转换器

    **Ruby-Kramdown:Markdown解析与转换的利器** 在IT行业中,Markdown作为一种轻量级的标记语言,已经广泛应用于文档编写、笔记记录以及代码注释等场景。它以简洁的语法,让非程序员也能轻松撰写格式化的文本。而...

    Ruby-Geocoder完整的Ruby地理编码解决方案

    Ruby-Geocoder是一款强大的Ruby库,它为开发者提供了完整的地理编码解决方案。这个库的主要功能包括正向地理编码、反向地理编码以及距离查询,适用于基于地理位置的应用开发。下面将详细介绍这些功能及其应用。 1. ...

    编码之间的转换

    本文将深入探讨编码转换的概念,以及如何利用工具进行转换,以"编码之间的转换"为主题,结合标签"源码"和"工具",我们将讨论一个名为`iconv`的实用程序,它是用于进行字符编码转换的工具。 编码是计算机存储和显示...

Global site tag (gtag.js) - Google Analytics