首页 > Java > java教程 > 如何使用 Java 正则表达式从字符串中提取数值?

如何使用 Java 正则表达式从字符串中提取数值?

Barbara Streisand
发布: 2024-12-11 03:21:09
原创
893 人浏览过

How Can I Extract Numerical Values from Strings Using Java Regular Expressions?

在 Java 中使用正则表达式提取值

本文解决了在 Java 中使用正则表达式提取特定文本段的需求。上下文围绕着将“[some number]”模式中包含的数字组件与一系列字符串隔离开来。

为了实现这一点,我们使用了 Java 正则表达式类。构造正则表达式,例如“^([a-zA-Z] )([0-9] )(.*)”来识别所需的模式。

核心 Java 调用应用源数据上的此正则表达式为:

  1. 使用 Pattern.compile() 方法创建一个 Matcher 对象。
  2. 使用Matcher.find() 方法检测输入字符串中是否存在模式。
  3. 使用 Matcher.group() 方法检索匹配的组。在下面的示例中,m.group(2) 将提取第一次出现的“[some number]”。

提供了一个全面的示例:

private static final Pattern p = Pattern.compile("^([a-zA-Z]+)([0-9]+)(.*)");
public static void main(String[] args) {
    Matcher m = p.matcher("Testing123Testing");
    if (m.find()) {
        System.out.println(m.group(0)); // whole matched expression
        System.out.println(m.group(1)); // Testing
        System.out.println(m.group(2)); // 123
        System.out.println(m.group(3)); // Testing
    }
}
登录后复制

对于场景如果数字部分可能包含符号,则应使用修改后的正则表达式,例如“^D (-?d ).*”。

以上是如何使用 Java 正则表达式从字符串中提取数值?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板