15

我想要一个只接受从 0 到 9 的浮点数和减号的正则表达式。

请帮忙。

4

2 回答 2

29

^[-+]?[0-9]*\.?[0-9]+$

  • ^- 字符串的开始
  • [-+]?- 0 或 1 符号指示符
  • [0-9]*- 0 个或多个整数
  • \.- 字符..在正则表达式中用于表示“任何字符”)
  • [0-9]+- 1 个或多个整数
  • $- 字符串的结尾

如果您改为使用逗号作为小数分隔符,请使用,代替\.

如果您同时使用两者/任何一个,则可以使用[.,]

于 2012-12-03T15:34:24.017 回答
3

试试^[-+]?[0-9]*[.,]?[0-9]+$

此正则表达式将匹配一个可选符号,即后跟零个或多个数字,后跟一个点和一个或多个数字(带有可选整数部分的浮点数),或者后跟一个或多个数字(整数)。

资料来源:http ://www.regular-expressions.info/floatingpoint.html - 改为使用逗号作为小数分隔符

于 2012-12-03T15:26:54.753 回答