我有这样的字符串:
Alian 12WE
和
ANI1451
有没有办法用 JAVA 中的空字符串替换所有数字(以及数字之后的所有内容)?
我希望输出看起来像这样:
Alian
ANI
使用正则表达式,它非常简单:
public class Test {
public static String replaceAll(String string) {
return string.replaceAll("\\d+.*", "");
}
public static void main(String[] args) {
System.out.println(replaceAll("Alian 12WE"));
System.out.println(replaceAll("ANI1451"));
}
}
您可以在找到数字后使用正则表达式删除所有内容 - 例如:
String s = "Alian 12WE";
s = s.replaceAll("\\d+.*", "");
\\d+
找到一个或多个连续数字.*
匹配数字后的任何字符使用正则表达式
"Alian 12WE".split("\\d")[0] // Splits the string at numbers, get the first part.
或替换"\\d.+$"
为""