如何检测不是英文的输入?

时间:2012-07-17 03:44:47

标签: c# .net regex vb.net

我正在尝试检测输入是否不是英文字符,将禁止输入,我正在使用下面的代码来验证输入。如果输入为非英语,则代码可以正常工作,例如'ກັຫກ່່''你好'。当输入包含英语字符和非英语字符时,下面的代码将允许输入通过,我不希望这发生。如果在输入中检测到任何非英语字符,我该如何禁止输入?

If Not Regex.IsMatch(Edt.Text, "[A-Za-z0-9]") Then
End If 

2 个答案:

答案 0 :(得分:1)

使用此正则表达式:

^[A-Za-z0-9]*$

答案 1 :(得分:1)

如果Regex.IsMatch包含任何拉丁字母或阿拉伯数字,Edt.Text来电即会成功。

首先,您需要更清楚地定义问题;特别是,您需要确切地确定允许哪些字符(考虑空格和标点符号)。

然后你需要修改正则表达式,使它匹配整个字符串,可能是:

"^[something]*$"

其中something作为练习。