允许负数/正数而不是字母

Par*_*Par 0 javascript regex

我想在我的文本框中禁用字母,这就是我使用这个表达式的原因:

/^[0-9]*$/
Run Code Online (Sandbox Code Playgroud)

问题是我也想允许负数,这个表达式不允许我使用减号.( - )..我做什么?

hsz*_*hsz 8

尝试使用以下regexp:

/^-?[0-9]*$/
Run Code Online (Sandbox Code Playgroud)

  • 可能是`+`而不是`*`,呃?例如,`/ ^ - ?[0-9] + $ /`.我们不想匹配" - ". (2认同)

Mic*_*eyn 5

更正确的是: /^(?:- *)?[0-9]+$/

因为通常允许在减号和数字之间有一个或多个空格.此外,您必须至少有一个数字才能拥有有效数字.