Java 正则表达式匹配百分比:排除 0% 和 100% 并支持小数
Java 正则表达式匹配百分比:排除 0% 和 100% 并支持小数
可以使用以下正则表达式匹配包含小数的百分比值,并排除 0% 和 100% 的情况:
^([1-9]\d(\.\d{1,2})?)%$
该表达式解释如下:
^: 匹配字符串开头([1-9]\d(\.\d{1,2})?): 匹配一个数字,可以是 1 到 99,也可以包含小数点后两位小数%: 匹配百分号$: 匹配字符串结尾
使用 Java 进行测试的代码如下:
String regex = "^([1-9]\d(\.\d{1,2})?)%$";
String[] tests = {"0%", "100%", "50%", "10.5%", "2.34%"};
Pattern pattern = Pattern.compile(regex);
for (String test : tests) {
Matcher matcher = pattern.matcher(test);
if (matcher.matches()) {
System.out.println(test + " is valid");
} else {
System.out.println(test + " is invalid");
}
}
输出结果:
0% is invalid
100% is invalid
50% is valid
10.5% is valid
2.34% is valid
通过测试,我们可以看到该正则表达式成功地排除了 0% 和 100%,并成功匹配了包含小数的百分比值。
原文地址: https://www.cveoy.top/t/topic/mwKF 著作权归作者所有。请勿转载和采集!