如何从字符串中删除数值

原文:https://www.studytonight.com/java-examples/how-to-remove-numeric-values-from-string

在这篇文章中,我们将使用 Java 代码从字符串中移除数值。字符串在 Java 中是用双引号(" ")括起来的字符序列。

字符串可以包含数字、字母和特殊符号。因此,有时我们需要过滤字符串,只得到字母。假设我们有一些用户名包含字母数字值,那么为了获得一个有效的用户名,我们需要通过删除其他字符来过滤它们。

这里,我们使用replaceAll()方法,该方法接受两个参数,一个是正则表达式来过滤字符串,第二个是替换字符串。

正则表达式可以是从字符串中移除字符的任何有效正则表达式。

举个例子

让我们创建一个从字符串中移除数值的示例。这里,我们使用 replaceAll()方法和正则表达式['^A-Za-z']来只保留字符串中的字母。

public class Main {
    public static void main(String[] args){
        String str = "House123sector4";
        System.out.println(str);
        // Replacing 
        str = str.replaceAll("[^A-Za-z]", "");
        System.out.println("String only:");
        System.out.println(str);
    }
}

房屋 123 部门 4【仅 T1】字符串: 房屋部门

例 1

让我们再举一个从字符串中移除数值的例子。这里,我们使用“\d”作为正则表达式,从字符串中删除所有数字并获得结果。

public class Main {
    public static void main(String[] args){
        String str = "House123sector4";
        System.out.println(str);
        // Replacing 
        str = str.replaceAll("\\d", "");
        System.out.println("String only:");
        System.out.println(str);
    }
}

房屋 123 部门 4【仅 T1】字符串: 房屋部门

例 2

在本例中,我们向 replaceAll()方法传递了一个正则表达式[0-9],该方法在移除所有数字或数值后返回一个字符串。请看下面的例子。

public class Main {
    public static void main(String[] args){
        String str = "House123sector4";
        System.out.println(str);
        // Replacing 
        str = str.replaceAll("[0-9]", "");
        System.out.println("String only:");
        System.out.println(str);
    }
}

房屋 123 部门 4【仅 T1】字符串: 房屋部门