我正在编写一个RegEx以在输入字段上使用。这样做的目的是让用户仅输入位数字,而不能输入其他任何内容(甚至连点号和逗号都不允许)。 到目前为止,这是我的代码:
RegExp = new RegExp(/^[0-9]$/);
但是,这仍然允许用户键入点和逗号。 我应该做出哪些更改才能只获得数字?
答案 0 :(得分:1)
您可以使用type = "number"
仅允许数字和onkeypress
事件来过滤dot
控件的input
符号:
<input type="number"
(onkeypress)="return (event.charCode == 8 || event.charCode == 0 ||
event.charCode == 13) ? null : event.charCode >= 48 && event.charCode <= 57">
类型为的元素用于让用户输入 数。它们包括内置的验证以拒绝非数字 条目。浏览器可能会选择提供步进箭头,以使用户 使用鼠标或通过简单点击来增加和减少值 用指尖。
答案 1 :(得分:0)
我认为这可能是您所需要的:
[Test]
public void TestRegExDigitsOnly()
{
var regEx = new Regex("^[0-9]*$");
regEx.IsMatch("123").ShouldBeTrue();
regEx.IsMatch("12.").ShouldBeFalse();
regEx.IsMatch("1.3").ShouldBeFalse();
regEx.IsMatch("abc").ShouldBeFalse();
}