我正在寻找一个正则表达式来放入角度的 ng-pattern 属性。
我正在寻找一个只满足特定十进制模式的表达式,即
exactly one digit --> than a decimal --> exactly 2 digits
我想出了
\d{1}\.{1}\d{2}?
上述模式正确匹配以下数字。
2.22
3.12
0.34
这很好,但如果用户输入12.12
它不会像我需要的那样拒绝它。
我正在寻找一个正则表达式来放入角度的 ng-pattern 属性。
我正在寻找一个只满足特定十进制模式的表达式,即
exactly one digit --> than a decimal --> exactly 2 digits
我想出了
\d{1}\.{1}\d{2}?
上述模式正确匹配以下数字。
2.22
3.12
0.34
这很好,但如果用户输入12.12
它不会像我需要的那样拒绝它。
如果您只想要此内容而不是其他任何内容,则应使用词首 ( ^
) 和词尾 ( $
) 锚点。您的正则表达式将是:
var regex = /^\d\.\d{2}$/; //then just bind to controller
如果表达式的计算结果为 RegExp 对象,则直接使用 this。
^
如果表达式的计算结果为字符串,则在将其包装在和$
字符中后,它将被转换为正则表达式。例如,"abc"
将转换为new RegExp('^abc$')
.
请注意,如果您使用字符串输入,则必须转义反斜杠以获得正确的正则表达式字符串。在这种情况下,您可以使用
<input ng-model="yourModel" ng-pattern="\\d\\.\\d{2}" >