-5

我有这个不适用于“45”的正则表达式,它适用于 -1.3434 1.43454 (+-)[0-9].[0-9]

正则表达式:“^(\-)?[0-9] +\.[0-9] $”

4

3 回答 3

2

尝试以下操作:

^(\-)?[0-9]+(\.[0-9]+)?$

从左到右解释模式

  • 从行首开始 - ^
  • “-”字符的 0-1 - (-)?
  • 一位或多位数字 [0-9]+
  • 组的 0-1:文字句点后跟一个或多个数字 (.[0-9]+)
  • 匹配到行尾 $
于 2013-05-07T15:58:41.347 回答
1

它需要是这样的,以允许可选的小数:

^-?\d+(\.\d+)?$

在字符串 ( ^) 的开头,有一个可选的破折号 ( -?),后跟一些数字 ( \d+)。然后它也可以有一个小数点 ( \.) 后跟一些数字 ( \d+) - 一起作为(\.\d+)?. 然后是字符串 ( $) 的结尾。

注意:破折号不需要转义,因为它在字符类之外。

于 2013-05-07T16:00:54.227 回答
0

在您的正则表达式中,点符号 (.) 是必需的。尝试这个:

^(\-)?[0-9]+(\.?[0-9]{1,})?$

固定的

于 2013-05-07T15:59:49.470 回答