Java 转换中英文字符

dragonsky_w 2011-09-06 11:54:37
现在又两个功能,就是关于中引文字符的相互替换,即 中文字符《==》 英文字符
具体是这样的,就是在一个表单中有一个<textarea>元素,现在要替换<textarea>元素中输入的英文字符,如单引号、双引号、逗号、句号、分号、省略号、&符号、换行符、制表符、回车等等,将起转换为对应的中文字符;
反之同样是中文的字符转换为英文字符,在Java中如何实现这样的功能……急救……

下面我具体写了一个英文字符装换中文字符的例子,但是不是很全面,望各位大哥帮帮忙……
代码如下:

public static String replaceBlank(String str){
if(str == null || "".equals(str) || str.length() < 1){
str = "";
}
str = str.replaceAll("\"(.*?)\"", "“$1”").replaceAll("'(.*?)'", "‘$1’");
str = str.replaceAll(",", ",");
//str = str.replaceAll(".", "。");
str = str.replaceAll(";", ";");
Pattern p = Pattern.compile("\\ss*|\t|\r|\n");
Matcher m = p.matcher(str);
String after = m.replaceAll(" ");
return after;
}
...全文
1144 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
dragonsky_w 2011-09-06
  • 打赏
  • 举报
回复
顶一下,不要沉了……
qybao 2011-09-06
  • 打赏
  • 举报
回复
做个替换表管理就好了,可以分别用英文-中文两个数组保存对象的符号,也可以用Map
for example,如果是Map,就保存 Map<String, String> map; map.put("\"", "”");
String[] enSymbol = {"\"", "'", ",", "[.]", ";", "...", "&", "\t", "\n", "\r"};
STring[] cnSymbol = {"“", "‘", ",", "。", ";", "……", "", "", "", ""}; //后面的想换成什么字符
for (int i=0; i<enSymbol.length; i++) {
str = str.replaceAll(enSymbol[i], cnSymbol[i]);
}
System.out.println(str);

81,122

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧