1

我使用代码从字符串中删除所有特殊字符,但它也删除了空格。如何排除空格?即我需要保留空格。

String alphaAndDigits = keyword.replaceAll("[^a-zA-Z0-9]+","");
4

2 回答 2

2
String alphaAndDigits = keyword.replaceAll("[^A-Za-z\\d\\s]+","");
  • \s是空格的匹配器[ \t\n\x0b\r\f]
  • \d是数字的匹配器[0-9]

String alphaAndDigits = keyword.replaceAll("[^A-Za-z0-9 \t\n\x0b\r\f]+","");

如果您愿意,将是相同的

于 2013-10-25T11:24:40.860 回答
0
        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);
于 2013-10-25T11:21:02.380 回答