Regex最多4位数字和/或最多4位小数



我需要一个regex,它允许最多4位数字和/或4位小数。

只允许使用格式示例(我只是使用1来使格式看起来简单,它都应该是[0-9](

1 
1.1
1.11
1.111
1.1111
11
11.1
11.11
11.111
11.1111
111
111.1
111.11
111.111
111.1111
1111
1111.1
1111.11
1111.111
1111.1111

到目前为止,我得到的最接近的

"^[0-9]{0,4}(?:.[0-9]{0,4}$)"

当我输入数字+小数时,效果非常好。然而,如果我只输入没有小数的数字,我可以输入4+数字,而这是不应该的。

^[0-9]{0,4}(?:.[0-9]{0,4}$)似乎只对您有效。由于.是未映射的,所以它匹配包括数字在内的任何字符,您会有一种它有效的印象。

一旦你用文字正确地转义了.,它就会停止";工作";,因为这需要一个点。

你需要使用

/^d{0,4}(?:.d{0,4})?$/
"^[0-9]{0,4}(?:[.][0-9]{0,4})?$"

详细信息

  • ^-字符串的开头
  • [0-9]{0,4}/d{4}-零到四位
  • (?:.[0-9]{0,4})?-可选出现.,然后为零到四位
  • $—字符串结束

最新更新