我需要允许用户在文本框中只输入整数(33)和浮点数(33.343)。
下面是我的正则表达式查询,但它不能正常工作。它允许用户输入浮点值,但在 int 值上给出错误。但我也需要允许用户输入 int。当用户输入任何其他类型的值时,它工作正常并给出错误消息。
/^[0-9]*[.][0-9]*$/
我需要允许用户在文本框中只输入整数(33)和浮点数(33.343)。
下面是我的正则表达式查询,但它不能正常工作。它允许用户输入浮点值,但在 int 值上给出错误。但我也需要允许用户输入 int。当用户输入任何其他类型的值时,它工作正常并给出错误消息。
/^[0-9]*[.][0-9]*$/
使点和它后面的部分成为可选的:
"^\d+(?:\.\d+|)$"
也更喜欢\d
,[0-9]
不要使用,*
因为那时你允许没有数字的任何一方的可能性.
这将接受:
1
1.23
但不是:
.1
23.
如果你想要那种行为,这取决于你。
尝试:
/^[0-9]+(?:\.[0-9]+)?$/
使用正则表达式模式
^(?=.*\d)\d*(?:\.\d*)?$
例如,这将匹配:
1234
123.
1.23
12.3
0.12
.123