Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java,将字符串数字替换为blankstring,并删除数字后面的所有内容_Java_Regex_Replace - Fatal编程技术网

Java,将字符串数字替换为blankstring,并删除数字后面的所有内容

Java,将字符串数字替换为blankstring,并删除数字后面的所有内容,java,regex,replace,Java,Regex,Replace,我有这样的字符串: Alian 12WE 及 在JAVA中有没有办法用空字符串替换所有数字(以及数字后面的所有内容) 我希望输出如下所示: Alian ANI 您可以使用正则表达式在找到数字后删除所有内容,例如: String s = "Alian 12WE"; s = s.replaceAll("\\d+.*", ""); \\d+查找一个或多个连续数字 *匹配数字后面的任何字符 使用正则表达式 "Alian 12WE".split("\\d")[0] // Splits the

我有这样的字符串:

Alian 12WE 

在JAVA中有没有办法用空字符串替换所有数字(以及数字后面的所有内容)

我希望输出如下所示:

Alian

ANI

您可以使用正则表达式在找到数字后删除所有内容,例如:

String s = "Alian 12WE";
s = s.replaceAll("\\d+.*", "");
  • \\d+
    查找一个或多个连续数字
  • *
    匹配数字后面的任何字符
使用正则表达式

"Alian 12WE".split("\\d")[0] // Splits the string at numbers, get the first part.

或者将
“\\d.+$”
替换为

替换为正则表达式,这非常简单:

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"));
    }   
}

使用正则表达式搜索数字的第一个索引,然后使用
子字符串(0,索引)
。。GoogleIt介绍如何在java中使用正则表达式和子字符串方法。享受编码:)添加
.trim()
以删除尾随空格查看示例输出:
Alian
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"));
    }   
}