使用RegExpressions验证GPA

时间:2014-11-14 00:39:52

标签: javascript regex

所以我必须验证输入的gpa,以便它遵循指南第一个数字是0-4,下一个是(。)后跟2个数字0-9。这就是我所拥有的,但它不起作用。

function validateGPA(gpa){
        var errorValue = gpa;
        var legalValue = /^\[0-4]\[.]\d\d$/;
        console.log(gpa);
        if(gpa == ""){
            errorValue = "Please enter your GPA.\n";
        }   else if(!legalValue.test(gpa)){
            errorValue = "Please enter a 3 digit gpa.\n";
        }
        return errorValue;
    }

我不确定我做错了什么,我尝试了一些调整,但似乎没有任何工作。

3 个答案:

答案 0 :(得分:8)

这是最短的表达方式:

/^[0-4]\.\d\d$/

说明:

^     - Start of line
[0-4] - One digit in the range 0-4
\.    - A dot, which needs to be escaped with a backslash.
        Without the backslash it means "any character apart from line break"
\d\d  - Two digits (any value from 0-9)
$     - End of line

答案 1 :(得分:5)

试试这样:

/^[0-4]\.\d{2}$/

答案 2 :(得分:0)

/^[0-4][.][0-9][0-9]$/

^匹配以0到4之间的数字开头的所有字符串 $ - 表示字符串以0到9之间的数字结尾

希望这有帮助。