public static void main(String[] args) {
        String str  = "a.A/-12-,#&^1.A./?b";
        String reg = "[^0-9A-Za-z,.-]";
        System.out.println("str = " + str);
        str = str.replaceAll(reg, "");
        System.out.println("str2 = " + str);
    }


输出

str = a.A/-12-,#&^1.A./?b
str2 = a.A-12-,1.A.b

Java 字符串留下字母数字和指定符号,.-,其他去除_java