`
carver
  • 浏览: 49315 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

把Unicode转换为原始字符的方法

    博客分类:
  • Java
阅读更多

支持任何Unicode字符串的转换。

 

源代码:

 

private static final Pattern REG_UNICODE = Pattern.compile("[0-9A-Fa-f]{4}");

public static String unicode2String(String str) {
	StringBuilder sb = new StringBuilder();
	int len = str.length();
	for (int i = 0; i < len; i++) {
		char c1 = str.charAt(i);
		if (c1 == '\\' && i < len - 1) {
			char c2 = str.charAt(++i);
			if (c2 == 'u' && i <= len - 5) {
				String tmp = str.substring(i + 1, i + 5);
				Matcher matcher = REG_UNICODE.matcher(tmp);
				if (matcher.find()) {
					sb.append((char) Integer.parseInt(tmp, 16));
					i = i + 4;
				} else {
					sb.append(c1).append(c2);
				}
			} else {
				sb.append(c1).append(c2);
			}
		} else {
			sb.append(c1);
		}
	}
	return sb.toString();
}
 

 

测试用例:

 

String unicode = "\\u672\\u6728gfs\\u5B50\\u96C5\\u4F26lxl";
String result = unicode2String(unicode);
Assert.assertEquals("\\u672木gfs子雅伦lxl", result);

 

 

String unicode = "\\u6728\\u5B50\\u96C5\\u4F26";
String result = unicode2String(unicode);
Assert.assertEquals("木子雅伦", result);

 

分享到:
评论

相关推荐

    C语言字符串转换为Python字符串的方法

    怎样将C中的字符串转换为Python字节或一个字符串对象? 解决方案 C字符串使用一对 char * 和 int 来表示, 你需要决定字符串到底是用一个原始字节字符串还是一个Unicode字符串来表示。 字节对象可以像下面这样使用 ...

    PHP实现Unicode编码相互转换的方法示例

    本文实例讲述了PHP实现Unicode编码相互转换的方法。分享给大家供大家参考,具体如下: &lt;?php /** * $str 原始中文字符串 * $encoding 原始字符串的编码,默认utf-8 * $prefix 编码后的前缀,默认"&#" * $postfix...

    python去除删除数据中\u0000\u0001等unicode字符串的代码

    py文件为utf-8格式 #!/usr/bin/env python # -*- coding:utf-8 -*- a = "system\u0000" b = re.sub(u'\u0000',...对应的,可以通过Python的decode函数去解码,其中自定原始字符串位unicode-ecape,就可以了。 完整的

    annoycode:通过将 unicode 字符转换为其他看起来相同的字符来惹恼人们

    烦人代码通过将 Unicode 字符转换为其他看起来相同的字符,以友好的方式惹恼人们。 它可以是像“V”这样的符号和罗马字面意义上的五个“V”。 想象一条带有 unicode 字符的路径,其中“å”不是 U+00E5,而是一个“a...

    字串转换(源码)

    将原始字串转换为unicode,格式为\u....\u.... 将Unicode字串\u....\u....格式字串转换为原始字符串。

    字符串和十六进制之间的转换方法实例

    函数:Encode&gt; /// 作用:将字符串内容转化为16进制数据编码,其逆过程是Decode /// 参数说明: /// strEncode 需要转化的原始字符串 /// 转换的过程是直接把字符转换成Unicode字符,比如数字”3″–&gt;0033,汉字”...

    第3条了解bytes、str和unicode的区别

    需要注意的是,Python2和Python3的Unicode和str实例都没有和特定的二进制编码相关联,因此想要把Unicode字符转换成二进制数据,必须使用encode方法,而将二进制转换成Unicode需要使用decode方法。 Python3的文件读取...

    AppUtils.zip

    1.获取应用程序名称 2.获取应用程序版本名称信息(VersionName、VersionCode) 3.获取应用包名 ...30.把原始字符串分割成指定长度的字符串列表 31.分割字符串,如果开始位置大于字符串长度,返回空

    javascript文档

    fromCharCode 方法 返回 Unicode 字符值的字符串。 Function 对象 创建一个新的函数。 function 语句 声明一个新的函数。 getDate 方法 使用当地时间返回 Date 对象的月份日期值。 getDay 方法 使用当地时间返回...

    JScript 语言参考

    fromCharCode 方法 返回 Unicode 字符值的字符串。 Function 对象 创建一个新的函数。 function 语句 声明一个新的函数。 getDate 方法 使用当地时间返回 Date 对象的月份日期值。 getDay 方法 使用当地时间返回...

    微软JavaScript手册

    fromCharCode 方法 返回 Unicode 字符值的字符串。 Function 对象 创建一个新的函数。 function 语句 声明一个新的函数。 getDate 方法 使用当地时间返回 Date 对象的月份日期值。 getDay 方法 使用当地时间返回...

    md5-js:对约瑟夫·迈尔斯(Joseph Myers)的高性能javascript md5函数的修改,该函数先转换为UTF-8即可对Unicode字符进行哈希处理。 http

    MD5 文件md5.js提供了md5() ,这是... 由于要检查unicode并可能将其转换为UTF-8,因此此函数比Joseph的原始函数慢,但将产生与在UTF-8编码的文本上执行的服务器端md5()函数相同的结果。 在有一个基本的性能测试。

    JKit集成工具箱

    同样也可以将已码转的文本转换成原始文本,方法是将已码转的文本粘贴到程序下部的文本框,点击执行,将在程序上部的文本框内输出原始文本。 “正则表达式测试”功能的使用也很简单,首先在菜单的设置-&gt;类型里选择...

    Emeditor 简体中文插件集 Build 5

    转换为繁体中文 转换为简体中文 四、显示增强 分割窗口 横向分割窗口 纵向分割窗口 显示标尺 显示行号 显示回车符 文字信息 计算单词数 求和 取色器 显示非打印字符 统计指定字符数 改变换行...

    python黑魔法之编码转换

    我们在使用其他语言的库做编码转换时,对于无法理解的字符,通常的处理也只有两种(或三种): ...再将unicode转换成目标编码。 第一步我们一般采用decode()或者 unicode() 这两个函数完成。 第二步我们

    c# 加密和解密相关代码

    Convert 类的ToChar 方法用来将指定的值转换为Unicode 字符,该方法为可重载方法,本实例中用到的它 的重载形式如下: public static char ToChar(int value) 参数说明 value:32 位有符号整数。 返回值:等效于...

    otdo-to-unicode:OTDO音译为Unicode

    OTDOTS转换为Unicode 该存储库... 与原始版本相比,更改为: 转义unicode序列(输出可以是UTF-8或UTF-16) 按照规范中的规定处理字符+ , v , ^ 修复标准的藏语phyva和brla 用作节点模块的可用性此存储库中的代码受。

    idna-convert:纯PHP IDNA转换器

    该库提供了两个类(分别为ToIdn和ToUnicode ),它们公开了在各个形式之间进行转换的三个公共方法。 请参阅下面的示例部分。 这使您可以转换主机名(简单的标签,例如localhost或FQHN,例如some-host.domain....

    简单了解python字符串前面加r,u的含义

    这篇文章主要介绍了简单了解python字符串前面加r,u的含义,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的...r/R:非转义的原始字符串 与普通字符相比,其他相对特殊的字符,其中可能包含转义字符

    ChineseCharConverter:汉字转换器

    中文字符转换器关于这个程序该程序将向您展示中文普通话、粤语发音和仓颉键序列。 支持的语言和数据如下。 中文普通话(普通话普通话)拼音拼音:简体和繁体粤语耶鲁拼音:简繁体简体/繁体字符转换(也支持日语汉字...

Global site tag (gtag.js) - Google Analytics