String strTest = "fdsffd你fd好dff";
System.out.println(strTest.replaceAll("\\w",""));

解决方案 »

  1.   

    一般汉字是以两个字节来存放的,而且高位都是1,所以可以取字符串的Ascall码值,一般汉字的Ascall码值比较大,而英文的字符值都比较小,去掉那些小的,只保留大的,就行了。
      

  2.   

    String test = "sfsdf!~!~s你12好3df";
    System.out.println(test.replaceAll("[\\x00-\\xff]",""));
      

  3.   

    \\x00-\\xff是用来匹配中文字符的,不明白的话可以看看正则表达式
      

  4.   

    解释一下楼上的,\\x00-\\xff表示在0-255之间,汉字在255之外,遗憾的是还有别的文字也在255之外,如拉丁文阿拉伯文