有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

GPA的java Kotlin正则表达式不匹配

所以我做了一个正则表达式来测试有效的GPA,比如0.00到5.00,包括0、4、3.55等。无效的东西包括6.0、3.555、0.000、11.11等。在多个网站上,我已经验证了这个正则表达式适用于这些情况

(([0-5]\s)|([0-4]\.\d{0,2}\s))|[5]\.[0]{0,2}\s

然而,然后我尝试在Kotlin中使用Java正则表达式类使用它,我没有得到预期的结果,对于我的测试用例总是错误的

带有“2.0”测试字符串的代码:

Regex("(([0-5]\\s)|([0-4]\\.\\d{0,2}\\s))|[5]\\.[0]{0,2}\\s").matches("2.0")

我很好奇我错过了什么导致了这个失败。我已经转义了/个字符,并尝试了使用字符串文本的变体,但没有转义,还直接使用Pattern/Matcher,但都没有效果


共 (1) 个答案

  1. # 1 楼答案

    @Pushpesh Kumar Rajwanshi的评论修复了我的问题。感谢您的及时回复,并抓住了丢失的4。案例