我有一个字符串数组的集合,我使用jXLS库写入Excel文件。但我只希望将匹配正则表达式的字符串写入excel文件。
答案 0 :(得分:0)
可以使用java 8 stream api和java.util.regex.Pattern完成。
例如:
String pattern = "\\d.+";
Pattern r = Pattern.compile(pattern);
List<Object> words = Arrays.asList("abc",1.0d,"123","a2c","111",2.3d);
List<String> filteredWords = words.stream()
.filter(object->object.getClass()==String.class) //accept only strings
.map(obj->obj.toString()) // map object to string
.filter(word->r.matcher(word).matches())
.collect(Collectors.toList());
System.out.println(filteredWords); // [123, 111]