boolean containsChinese = Pattern.matches(".*[\\u4e00-\\u9fa5].*", names);//containsChinese: true 包含中文就直接把其他特殊字符英文去掉if (containsChinese) {names = names.replaceAll("[^\\u4E00-\\u9FA5]", "");//使用正则表达式过滤特殊字符names = names.replaceAll("\\s{1,}", "");} else {//不包含中文names = names.replaceAll("[^a-zA-Z]", "");//使用正则表达式过滤特殊字符names = names.replaceAll("\\s{1,}", "");} 排除 中文英文 () () 以外的特殊字符 boolean containsChinese = Pattern.matches(".*[\\u4e00-\\u9fa5].*", names);//containsChinese: true 包含中文就直接把其他特殊字符英文去掉if (containsChinese) {names = names.replaceAll("[^(\\u4E00-\\u9FA5)(())]", "");//使用正则表达式过滤特殊字符names = names.replaceAll("\\s{1,}", "");} else {//不包含中文names = names.replaceAll("[^(a-zA-Z)(())]", "");//使用正则表达式过滤特殊字符names = names.replaceAll("\\s{1,}", "");}