有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java使用正则表达式进行拆分,但将第一个数组元素作为空白

Kidly帮我找到为什么ac[0]是空的

public class AddtheNumbers {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        String abc="bajsd 7 jns 87 5";
        String ac[]=abc.trim().split("\\D+");

        System.out.println(ac[0]);
        System.out.println(ac[1]);
        System.out.println(ac[2]);
      }
}

共 (1) 个答案

  1. # 1 楼答案

    因为你不是在数字上分裂,第一件事不是数字。因此空白。我想试试这样的

    import java.util.regex.*;
    public class AddtheNumbers {
    
        public static void main(String[] args) {
           Pattern p = Pattern.compile("-?\\d+");
           Matcher m = p.matcher("bajsd 7 jns 87 5");
           while (m.find()) {
             System.out.println(m.group());
           }
        }
    }