我有这个正则表达式^[0-9]\.[0-9]{1, 2}$
。有效值应在0-9之间,并且只允许1或2个小数位,即
1.11 - 正确 1.1 - 正确
1.111 - 错误 22.11 - 错误
但是,我输入一个像112这样的值,它允许它!有任何更正吗?
答案 0 :(得分:0)
你原来的正则表达式:
^[0-9]\.[0-9]{1, 2}$
^
:必须开始一行[0-9]
:数字\.
:一个字面点[0-9]
:一个数字{1, 2}
:字面上匹配该字符串(这是由于您的空间)$
:必须结束一行您的测试内容不会以数字结尾:
1.11 - CORRECT 1.1 - CORRECT
1.111 - WRONG 22.11 - WRONG
要匹配测试内容,您需要删除该空格和结束标记:
^[0-9]\.[0-9]{1,2}\s
我添加了一个必需的空白字符,以确保您没有其他点和数字,如1.11.1
。这refined version explained:
[0-9]{1,2}
:一位或两位数字\s
:一个空白字符(通常是空格或制表符,通常不是换行符或回车符)