(^-?[0-9][0-9]{0,1}$)|(^-?90$)
这是我迄今为止所能创造的,它在我的单元测试中仍然失败。 什么应该是正确的?
编辑:在上面这个问题中,-99被接受了,9被接受了。
编辑:我一直试图以字符串格式接受-90 t0 90,因为我从服务器获得相同的结果。通过下面发布的评论,它点击了我说我做错了所以我将其转换为整数并使用简单的javascript比较运算符来解决我的问题。
答案 0 :(得分:3)
对于这个简单的if是足够的,而不是去REGEX
if(num >= -90 || num <= 90) {
//valid
}
或者如果它的硬性和快速性,后面的正则表达式应该工作提供 @Stribizhev :
^-?0*(?:[0-8]?[0-9]|90)$
答案 1 :(得分:1)
您需要对正则表达式进行一些编辑,它应该接受9并且您需要在第一部分进行更改。试试这个:
/(^-?[0-8][0-9]{0,1}$)|(^-?90$)|(^-?9$)/
这是正确的正则表达式