首页 > 解决方案 > Java int 到分数

问题描述

如何更改4 -1/4 -54/1 -1/4 -5/1 使用正则表达式?

String str = "4 -1/4 -5";
String regex = "(-?\\d+/\\d+)";
Matcher matcher = Pattern.compile(regex).matcher(str);

我的代码只找到分数,但我想找到没有分数的整数。

标签: javaregex

解决方案


String result = str.replaceAll("(?<!/)\\b\\d+\\b(?!/)", "$0/1");

查找整个数字 ( \b\d+\b),不以 ( (?<!/)) 开头,也不以斜线 ( (?!/)) 结尾,并将/1它们相加。


推荐阅读