如何使用RegEx过滤数字键上方的标点符号?

时间:2016-02-16 18:55:32

标签: regex vb.net validation special-characters

我正在尝试编写代码,阻止用户在输入字段中输入除数字以外的任何内容。以下是此输入字段的代码:

Const RegExDecimalOnly = "^(((\d{1,3})(,\d{3})*)|(\d+))(.\d+)?$"

此RegEx可以很好地阻止字母字符,包括大写和小写。它还会阻止许多其他标点字符。但是,它允许我输入按住shift并按数字键时产生的标点符号。这些标点符号包括:

! [通过按住Shift键并按1生成]

@ [按住Shift键并按2生成]

数字符号[通过按住Shift键并按3生成]

%[按住Shift键并按5生成]

^ [按住Shift键并按6生成]

&安培; [通过按住Shift键并按7生成]

星号[通过按住Shift键并按8生成]

([按住Shift键并按9生成]

)[按住Shift键并按0生成]

我不能使用“^ [0-9] * $”的RegEx,因为输入字段需要在小数点后面有两位数,以及用逗号表示数千,数百万,数十亿等等。任何人都可以提供给我的任何帮助将不胜感激。祝你有愉快的一天。

1 个答案:

答案 0 :(得分:0)