java - 过滤字符串中不断变化的数字的最简单方法是什么?

标签 java regex

有人可以告诉我在以下子字符串中提取数字“20”的最简单方法吗?

一级(10/20)

注意:括号中的数字和“Level”后面的数字正在变化,并且可以包含比本示例更多的字符

如果有一种方法可以使用正则表达式并从中提取特定部分,那就太棒了。

最佳答案

我不是最擅长使用正则表达式,但这里有一个适用于您的示例的可行解决方案:

String s = "Level I (10/20)";

Pattern pattern = Pattern.compile("\\(\\d+/(\\d+)\\)");
Matcher matcher = pattern.matcher(s);

if (matcher.find()) {
    System.out.println(matcher.group(1));
}

输出:

20

关于java - 过滤字符串中不断变化的数字的最简单方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50093084/

相关文章:

java - 将 System.Out.Println 写入文本文件

java - 基于 JDBC 的 AS400 风格命名

javascript - 如何通过正则表达式在对象值中指定单引号

swift - 如何搜索在字符串的特定索引之前开始的正则表达式匹配?

Java正则表达式来标记字符串

regex - 正则表达式抓取 Red Hat 发行版

java - 通用列表属性,获取通用类型

java - 几乎相同的语句,但不同的值

java - Android:ScrollView 不使用键盘滚动

java - 如何拆分多行 INSERT INTO sql 语句?