java从字符串中提取数字的简单实例

关于“java从字符串中提取数字的简单实例”,以下是完整攻略:

1. 前言

在开发Java应用程序时,经常需要从字符串中提取数字,这种情况很常见。本文将介绍使用Java代码如何从字符串中提取数字。

2. 通过正则表达式实现

使用正则表达式可以很方便地从字符串中提取数字。代码示例1如下:

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class ExtractNumber {

    public static void main(String[] args) {

        String str = "hello 123 world 456!";

        Pattern p = Pattern.compile("\\d+");
        Matcher m = p.matcher(str);

        while (m.find()) {
            System.out.println(m.group());
        }
    }
}

代码说明:

  • String str = "hello 123 world 456!":定义了一个包含数字的字符串。
  • Pattern p = Pattern.compile("\d+"):定义正则表达式,以匹配数字。其中,\d表示数字,+表示匹配1个或多个。
  • Matcher m = p.matcher(str):使用Pattern对象的matcher方法,生成一个Matcher对象。该对象可以对字符串进行操作。
  • while (m.find()): while循环,以在字符串中寻找数字。如果匹配到数字,就会执行循环中的语句。
  • System.out.println(m.group()):输出匹配到的数字。

上述代码的输出结果为:

123
456

3. 通过String类的操作实现

除了使用正则表达式,还可以使用String类中的一些方法操作字符串,例如,substring、indexOf等。代码示例2如下:

public class ExtractNumber {

    public static void main(String[] args) {

        String str = "hello 123 world 456!";

        String numStr = "";
        for (int i = 0; i < str.length(); i++) {
            char c = str.charAt(i);
            if (Character.isDigit(c)) { // 如果是数字
                numStr += c;
            } else if (numStr.length() > 0) { // 如果不是数字,但已有数字字符串
                System.out.println(numStr);
                numStr = "";
            }
        }

        if (numStr.length() > 0) { // 处理末尾数字字符串的情况
            System.out.println(numStr);
        }
    }
}

代码说明:

  • String str = "hello 123 world 456!":定义了一个包含数字的字符串。
  • for循环遍历字符串中的每个字符。
  • char c = str.charAt(i):获取字符串中第i个字符。
  • if (Character.isDigit(c)) { ... }:如果该字符是数字,则将该字符加入numStr中存储。
  • else if (numStr.length() > 0) { ... }:如果该字符不是数字,但是已经存储了数字字符串,就输出数字字符串。
  • if (numStr.length() > 0) { ... }:for循环结束后,处理最后一个数字字符串的输出。

上述代码的输出结果为:

123
456

4. 总结

本文介绍了两种从字符串中提取数字的方法,通过正则表达式和String类方法实现。在实际开发中,根据需求进行使用。

阅读剩余 51%

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:java从字符串中提取数字的简单实例 - Python技术站

(0)
上一篇 2023年5月26日
下一篇 2023年5月27日

相关文章

  • java代码获取数据库表里数据的总数操作

    让我详细讲解一下关于“Java代码获取数据库表里数据的总数操作”的完整攻略。 1. 通过JDBC获取数据总数 1.1. JDBC连接数据库 首先,我们需要使用JDBC连接到数据库。具体步骤如下: // 加载MySQL JDBC Driver Class.forName("com.mysql.jdbc.Driver"); // 声明MySQ…

    Java 2023年5月20日
    00
  • 教你用Java GUI实现文本文件的读写

    教你用Java GUI实现文本文件的读写 如果你想在Java图形用户界面(GUI)中实现文本文件的读写,可以按照以下步骤操作: 1. 创建GUI界面 首先,需要创建一个GUI界面,让用户可以输入和查看文件的内容。可以使用Swing或JavaFX等GUI框架来创建GUI界面。 以下是一个简单的使用JavaFX创建GUI界面的示例代码: import javaf…

    Java 2023年5月20日
    00
  • 解析jdbc处理oracle的clob字段的详解

    解析jdbc处理oracle的clob字段的详解 在使用jdbc连接oracle数据库的过程中,遇到clob字段时可能会遇到一些问题。本文将介绍如何正确地使用jdbc处理oracle的clob字段。 问题描述 当使用jdbc连接oracle数据库并读取clob字段时,可能会遇到以下问题: 读取到的clob字段大小不对,可能是因为jdbc默认只读取clob字段…

    Java 2023年6月16日
    00
  • Java实现简单密码加密功能

    Java实现简单密码加密功能 1. 概述 密码加密是信息安全中常见的一种手段,可以防止密码被破解。本文将介绍在Java中如何实现简单密码加密功能。 2. 加密方法 常见的密码加密方法有很多种,本文介绍其中一种简单的方法:MD5加密。MD5是一种不可逆的哈希函数,可以将任意长度的数据转换成128位长度的数据,通常用于对密码进行加密。 Java中提供了实现MD5…

    Java 2023年5月18日
    00
  • java基础之方法和方法的重载详解

    Java基础之方法和方法的重载详解 方法是Java程序中最基本的组成部分之一。“方法”的英文名为“Method”,也可以被称为“函数(Function)”或者“子程序(Subroutine)”。方法装有的代码块可以被多次调用,使得程序模块化,更加易于理解、调试和维护。 什么是Java方法? Java方法是一组相关语句的集合,能够一次性执行多个语句。方法是一种…

    Java 2023年5月26日
    00
  • Java使用DateFormatter格式化日期时间的方法示例

    当我们在Java编程中需要处理时间相关的数据时,经常需要进行日期时间的格式化。Java中提供了DateFormatter类来进行日期时间的格式化,本文将详细讲解使用DateFormatter格式化日期时间的方法示例。下面按照以下步骤进行讲解: 1. 创建DateFormatter对象 在使用DateFormatter格式化日期时间之前,首先需要创建一个Dat…

    Java 2023年5月20日
    00
  • JSP由浅入深(9)—— JSP Sessions

    下面是关于 JSP Sessions 的完整攻略。 什么是 JSP Sessions 在学习 JSP 开发过程中,我们经常需要存储一些用户的数据,比如用户的登录信息、购物车中的商品、用户的浏览记录等等。这些数据需要在不同的页面之间传递或者在同一个页面中进行共享。而 JSP Sessions 就是一种实现数据共享的技术。 Session 在 JSP 中是一个用…

    Java 2023年6月15日
    00
  • Java读取文件及基于正则表达式的获取电话号码功能详解

    Java读取文件及基于正则表达式的获取电话号码功能详解 在Java中,读取文件是一个很基础的操作,而基于正则表达式的获取电话号码则是一个常见的需求。本文将详细讲解如何使用Java实现这两个功能。 Java读取文件 在Java中,可以使用java.io.File类来表示一个文件,使用java.io.BufferedReader类来读取文件内容。以下是一段示例代…

    Java 2023年5月20日
    00
合作推广
合作推广
分享本页
返回顶部