高分悬赏:Java语言怎么删除一个字符串里所有的符号,只保留文字呢

高分悬赏:Java语言怎么删除一个字符串里所有的符号,只保留文字呢

问题描述:

高分悬赏:Java语言怎么删除一个字符串里所有的符号,只保留文字呢
高分悬赏:Java语言怎么删除一个字符串里所有的符号,只保留文字呢

只保留文字是指汉字么,那就可以遍历字符串,判断每个字符如果是汉字就追加,不是汉字就掠过,然后组成新的结果就可以了哦。

遍历string 将分割成一个个char然后处理 用空字符串替换,最后去空。

第一次回答,嘿嘿
很多种方式吧!
不过我亲测的只有两种,一种是split切割,然后循环输出;一种是遍历替换,再去空循环输出
看问题主,你要那种吧!因为按照实际情况进行处理比较好

定义一个符号的字符集,然后把该字符集的字符替换为空即可

String symbol = "\\p{Punct}"; //定义一个符号字符集,要把这个字符集的字符都去掉
String str = "this is a test, some symblo likes [],{},(), etc..., will be replaced by empty string."; //测试字符串
str = str.replaceAll(String.format("[%s]+", symbol), ""); //调用replaceAll替换掉字符集的字符
System.out.println(str); //打印结果

分割 然后输出就可以了

public String replace(String from, String to, String source)
{

if (source == null || from == null || to == null)

return null;

StringBuffer bf = new StringBuffer("");

int index = -1;

while ((index = source.indexOf(from)) != -1)
{

bf.append(source.substring(0, index) + to);

source = source.substring(index + from.length());

index = source.indexOf(from);

}

bf.append(source);

return bf.toString();

}