欢迎访问宙启技术站
智能推送

Java函数的使用方法——如何取出字符串中的数字

发布时间:2023-09-24 21:36:33

要取出字符串中的数字,可以使用Java提供的正则表达式和字符串处理函数。

1. 使用正则表达式匹配数字:

   String str = "abc123def456";
   String pattern = "\\d+"; // 匹配一个或多个数字
   Pattern r = Pattern.compile(pattern);
   Matcher m = r.matcher(str);
   while (m.find()) {
       System.out.println(m.group()); // 输出匹配到的数字
   }
   

2. 使用字符串处理函数逐个字符判断是否是数字:

   String str = "abc123def456";
   StringBuilder numStr = new StringBuilder();
   for (int i = 0; i < str.length(); i++) {
       char c = str.charAt(i);
       if (Character.isDigit(c)) { // 判断字符是否是数字
           numStr.append(c); // 如果是数字,添加到结果字符串中
       } else if (numStr.length() > 0) { // 如果不是数字,且结果字符串中有数字,则输出数字并清空字符串
           System.out.println(numStr.toString());
           numStr.setLength(0);
       }
   }
   if (numStr.length() > 0) { // 循环结束后,如果结果字符串中还有数字,则输出数字
       System.out.println(numStr.toString());
   }
   

以上两种方法都可以提取字符串中的数字。 种方法使用正则表达式更简洁,而第二种方法则可以灵活处理数字的位置和情况。根据实际需求选择适合的方法。