我使用代码从字符串中删除所有特殊字符,但它也删除了空格。如何排除空格?即我需要有空格。
String alphaAndDigits = keyword.replaceAll("[^a-zA-Z0-9]+","");
答案 0 :(得分: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]+","");
将是相同的
答案 1 :(得分: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);