.net textbox控件中如何限制输入特殊字符

如题.... 如题. 展开
 我来答
百度网友6600a9880
2009-04-24 · TA获得超过587个赞
知道小有建树答主
回答量:118
采纳率:0%
帮助的人:83.7万
展开全部
char[] charstr={'!','@','#','$','%','^','&','*','(',')','<','>','?',':','"','{','}'};// 非法字符数组(有几个就写几个用单引号引上‘’用,点隔开)
char[] textstr = TextBox1.Text.ToString().Trim().ToCharArray();//文本框输入的值
int temp = 0;
for (int i = 0; i < charstr.Length; i++)
{
for (int j = 0; j < textstr.Length; j++)
{
if (charstr[i] == textstr[j])
{
temp++;
}
}
}
if (temp > 0)
{
Response.Write("<script>alert('您输入了非法字符,请重新输入!')</script>");
}
试试看
maple259683
2009-04-23 · TA获得超过905个赞
知道小有建树答主
回答量:1079
采纳率:0%
帮助的人:907万
展开全部
用js表达式

例子

Public Function bTxtFmat(ByVal strTxt As String, ByVal iTxtType As Integer, ByVal bNullAllow As Boolean, ByVal strCaption As String) As Boolean
'txt=text.text
'txttype=1,2,3(1=数字型,2=字符型,3=汉字,4=数字和字符)
'nullallow=是否允许为空,true=可以为空。
'caption=显示文本框内容的标题
Dim i, k, m As Integer
If bNullAllow = False Then
If Len(strTxt) = 0 Then
MsgBox("" & strCaption & "输入项中内容不允许为空,请重新输入!", MsgBoxStyle.Exclamation, "系统警告")
bTxtFmat = False
Exit Function
End If
End If
k = Len(strTxt)
Select Case iTxtType
Case 1
For i = 1 To k
m = Asc(Right(Left(strTxt, i), 1))
If m < 48 Or m > 57 Then
MsgBox("" & strCaption & "输入项中只允许输入数字", MsgBoxStyle.Exclamation, "系统警告")
bTxtFmat = False
Exit Function
End If
Next
Case 2
For i = 1 To k
m = Asc(Right(Left(strTxt, i), 1))
If m < 65 Or (m > 91 And m < 97) Or m > 123 Then
MsgBox("" & strCaption & "输入项中只允许输入字符", MsgBoxStyle.Exclamation, "系统警告")
bTxtFmat = False
Exit Function
End If
Next
Case 3
For i = 1 To k
m = Asc(Right(Left(strTxt, i), 1))
If m >= 0 Then '汉字首位为1,按有符号计算全部为负数
MsgBox("" & strCaption & "输入项中只允许输入汉字!", MsgBoxStyle.Exclamation, "系统警告")
bTxtFmat = False
Exit Function
End If
Next
Case 4
For i = 1 To k
m = Asc(Right(Left(strTxt, i), 1))
If m < 0 Then '汉字首位为1,按有符号计算全部为负数
MsgBox("" & strCaption & "输入项中不允许输入汉字!", MsgBoxStyle.Exclamation, "系统警告")
bTxtFmat = False
Exit Function
End If
Next
End Select
bTxtFmat = True
End Function

用正则表达式限制用户输入汉字:

using System.Text.RegularExpressions;

......

string str;

......

bool yn=Regex.IsMatch(str,@"^[\u4e00-\u9fa5]+$");
if(yn==true)
{
MessageBox.Show("y"); //汉字
}
else
{
MessageBox.Show("n"); //不是汉字
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ioucxj
2009-04-23 · 超过53用户采纳过TA的回答
知道答主
回答量:147
采纳率:0%
帮助的人:136万
展开全部
正则表达式判断
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友6eed2f8
2009-04-23 · TA获得超过5082个赞
知道大有可为答主
回答量:3423
采纳率:0%
帮助的人:3815万
展开全部
js
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式