Java 从字符串中删除特殊字符

Java 从字符串中删除特殊字符,java,string,jakarta-ee,Java,String,Jakarta Ee,我使用该代码删除字符串中的所有特殊字符,但也删除了空格。如何排除空格?也就是说,我需要保持空白 String alphaAndDigits = keyword.replaceAll("[^a-zA-Z0-9]+",""); \s是空白的匹配器[\t\n\x0b\r\f] \d是数字的匹配器[0-9] String alphaAndDigits=关键字.replaceAll(“[^A-Za-z0-9\t\n\x0b\r\f]+”,”) 如果您希望将它们添加到正则表达式中,是否也一样“[^a-

我使用该代码删除字符串中的所有特殊字符,但也删除了空格。如何排除空格?也就是说,我需要保持空白

String alphaAndDigits = keyword.replaceAll("[^a-zA-Z0-9]+","");
  • \s
    是空白的匹配器
    [\t\n\x0b\r\f]
  • \d
    是数字的匹配器
    [0-9]
String alphaAndDigits=关键字.replaceAll(“[^A-Za-z0-9\t\n\x0b\r\f]+”,”)


如果您希望将它们添加到正则表达式中,是否也一样<代码>“[^a-zA-Z0-9\t\n\r]+”
?@iluxa工作起来很有魅力!谢谢
        String alphaAndDigits = "hello&%*..sad**";
        Pattern ptn = Pattern.compile("[^S a-zA-Z0-9]");
        Matcher match = ptn.matcher(alphaAndDigits);
        while (match.find()) {
            String str = match.group();
            alphaAndDigits =alphaAndDigits.replaceAll("\\" + str, "");
        }
        System.out.println(alphaAndDigits);
String alphaAndDigits = keyword.replaceAll("[^A-Za-z\\d\\s]+","");