如何在正则表达式中包含点作为最后一个字符?

用户1589375

我正在尝试在 JavaScript 中创建匹配 1-100 之间的数字并包含两位小数的正则表达式。需要包含在正则表达式中的示例数字:

1 1.1 1.15 0.5 100 100.00

需要排除的数字示例:

101 100.01 100.1 55.999

这是我目前的正则表达式:

^(?:100(?:\.00?)?|\d?\d(?:\.\d\d?)?)$

否则,这有效,但我还需要包含两个数字,后跟小数或 100 后跟小数,如下所示:

14. 9. 100.

这是因为每次在输入字段中按下按钮时我都会运行正则表达式检查,即使当前正则表达式允许像 0.5 这样的数字,我也无法输入它,因为 0. 是不允许的。

维克多·斯特里比尤夫

您将需要在此处使用两个单独的正则表达式,一个用于实时输入验证(正是您在问题中描述的内容,它将让您输入允许的值),另一个用于最终的“提交时”验证(将检查整个输入字符串的有效性)。否则,您将无法输入0.5类似的值。

实时输入验证的正则表达式是:

/^(?:100(?:\.0?0?)?|\d\d?(?:\.\d?\d?)?)$/

请参阅此正则表达式演示注意如何?量词做模式可选,尤其是\d0之后\.的图案。

0.01to开头的数字最终验证的正则表达式100

/^(?!0*(?:\.0*)?$)(?:100(?:\.00?)?|\d?\d?(?:\.\d\d?)?)$/

请参阅此正则表达式演示

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在每次更改的正则表达式中添加一个字符?

正则表达式用最后一个字符验证

正则表达式WORD的最后一个字符

如何使用正则表达式验证捕获组中的最后一个字符

Grafana正则表达式忽略星号作为标签中的第一个字符

正则表达式仅提前删除最后一个字符

正则表达式匹配字符串中的最后一个字符

正则表达式匹配LF中的最后一个字符

正则表达式,用于检查最后一个字符

正则表达式忽略第一个和最后一个字符

的正则表达式模式匹配包含一个字符

正则表达式中忽略一个字符的最大长度

如何在Notepad ++中从正则表达式搜索中替换一个字符

匹配正则表达式中的第一个字符?

正则表达式获取最后一个字符

选择最后一个字符的正则表达式

正则表达式匹配的最后一个字符

正则表达式查找不包含数字的最后一个字符串

如何禁止“。” (点)作为正则表达式中的第一个字符

正则表达式:引号中的最后一个字符串

正则表达式,禁止点 (.) 作为最后一个字符

正则表达式 - 删除最后一个字符

如何把 xpages 正则表达式(第一个字符和最后一个字符)不能是特殊字符

如何在 `tr` 中使用正则表达式模式来仅替换匹配的最后一个字符?

正则表达式匹配字符串中的最后一个字符 - C#

从正则表达式匹配中删除最后一个字符

正则表达式匹配一个字符后的点

如何替换所选正则表达式的最后一个字符?

如何在正则表达式中用一个字符写任意 9 个数字