为了账号安全,请及时绑定邮箱和手机立即绑定

如何在Java中使用正则表达式在特定位置查找文本中的数字

如何在Java中使用正则表达式在特定位置查找文本中的数字

一只甜甜圈 2021-04-04 15:13:18
如何创建在字符串文本中查找数字的方法。我包含字符串列表,其中包含类似以下内容的文本:Radius of Circle is 7 cmRectangle 8 Height is 10 cmRectangle Width is 100 cm, Some text现在,我必须找到cm之前的这些行中的所有数字,以便不会错误地找到其他任何数字。
查看完整描述

3 回答

?
阿波罗的战车

TA贡献1862条经验 获得超6个赞

此处使用的正确模式是:


(\\d+)\\s+cm\\b

对于一个班轮,我们可以尝试使用String#replaceAll:


String input = "Rectangle Width is 100 cm, Some text";

String output = input.replaceAll(".*?(\\d+)\\s+cm\\b.*", "$1");

System.out.println(output);

或者,要查找给定文本中的所有匹配项,我们可以尝试使用正式的模式匹配器:


String input = "Rectangle Width is 100 cm, Some text";

String pattern = "(\\d+)\\s+cm\\b";

Pattern r = Pattern.compile(pattern);

Matcher m = r.matcher(input);

while (m.find()) {

    System.out.println("Found measurement: " + m.group(1));

}


查看完整回答
反对 回复 2021-04-14
  • 3 回答
  • 0 关注
  • 313 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信