有几个字符串,比如10、94、30、0、b1、0、94、57、1s,将其中纯数字的字符串提取出来放在数组里,Java的实现

有几个字符串,比如10、94、30、0、b1、0、94、57、1s,将其中纯数字的字符串提取出来放在数组里,Java的实现

Arrays.asList("10","94","30","0","b1","0","94","57","1").stream().filter(item->item.matches("^[0-9]*$")).collect(Collectors.toList());

package com.test;

import java.util.ArrayList;
import java.util.List;
import java.util.regex.Pattern;

public class Test10 {

public static void main(String[] args) {
    // TODO Auto-generated method stub

    Object datas[] = new Object[9];
    datas[0] = 10;
    datas[1] = 94;
    datas[2] = 30;
    datas[3] = 0;
    datas[4] = "b1";
    datas[5] = 0;
    datas[6] = 94;
    datas[7] = 57;
    datas[8] = "1s";

    String regex ="\\b\\d+\\b";
    List<Object> rst = new ArrayList<Object>();
    for(Object data:datas) {
       if(Pattern.matches(regex, String.valueOf(data))) {
           rst.add(data);
       }
    }

    for(Object item : rst) {
        System.out.println("纯数字:"+item);
    }

}

}