📅  最后修改于: 2023-12-03 15:08:15.135000             🧑  作者: Mango
在Java编程中,字符串经常是不可避免的一部分。然而,在某些情况下,我们需要删除字符串中的非字母数字字符。这篇文章将介绍如何从Java的字符串中删除所有非字母数字字符。
Java中的正则表达式可以用来匹配特定的文本模式。我们可以使用正则表达式来匹配非字母数字字符,并将其替换为空字符串。
示例代码:
String originalString = "abc123!@#";
String pattern = "[^a-zA-Z0-9]";
String result = originalString.replaceAll(pattern, "");
System.out.println(result); // 输出:abc123
解释:
originalString
,其中包含了字母、数字和非字母数字字符。pattern
,该表达式可以匹配除了字母和数字以外的任何字符。replaceAll()
方法将所有匹配的非字母数字字符替换为空字符串。如果您不想使用正则表达式,则可以使用循环遍历字符的方法。
示例代码:
String originalString = "abc123!@#";
StringBuilder sb = new StringBuilder();
for (int i = 0; i < originalString.length(); i++) {
char c = originalString.charAt(i);
if (Character.isLetterOrDigit(c)) {
sb.append(c);
}
}
String result = sb.toString();
System.out.println(result); // 输出:abc123
解释:
originalString
,其中包含了字母、数字和非字母数字字符。sb
。c
。sb
中。sb
转换为字符串类型并输出结果。在以上两种方法中,第一种方法使用正则表达式更为简便,适用范围更广。而第二种方法则适用于小型字符串的处理。
以上是如何从Java的字符串中删除所有非字母数字字符的方法介绍,希望对您有所帮助。