◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
有两种方法从 java 数组中截取数字:使用正则表达式匹配并提取数字。使用 arrays.stream() 过滤和映射数字。
如何使用 Java 截取数组中的数字
解答:
使用 Java 截取数组中的数字有两种主要方法:
1. 使用正则表达式 (RegEx)
正则表达式是一种用来查找和操纵文本模式的强大工具。您可以使用 String.matches() 方法来检查数组元素是否包含数字,并使用 String.replaceAll() 方法提取它们。
立即学习“Java免费学习笔记(深入)”;
String[] arr = new String[] {"abc", "123", "def", "456"}; String[] numbers = new String[arr.length]; for (int i = 0; i < arr.length; i++) { if (arr[i].matches(".*\d+.*")) { numbers[i] = arr[i].replaceAll("[^\d]", ""); } }
2. 使用 Arrays.stream()
Java 8 引入了 Arrays.stream() 方法,它允许您对数组进行流操作。您可以使用 filter() 操作过滤出包含数字的元素,然后使用 map() 操作提取数字。
String[] arr = new String[] {"abc", "123", "def", "456"}; String[] numbers = Arrays.stream(arr) .filter(e -> e.matches(".*\d+.*")) .map(e -> e.replaceAll("[^\d]", "")) .toArray(String[]::new);
注意:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。