以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 请教如何验证输入格式? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=135680) |
-- 作者:jq_shang -- 发布时间:2019/5/31 21:19:00 -- 请教如何验证输入格式? 用掩码方式验证录入格式,老是出错,不会用啊。 尝试用代码来验证,下列代码仍然是表达式错误: If e.Sender.Value Like ### Or e.Sender.Value Like #### Then Else MessageBox.show("请输入3位或4位区号数字!") e.Cancel = True End If 请各位大神给予帮助。 |
-- 作者:有点蓝 -- 发布时间:2019/5/31 21:34:00 -- If e.Sender.Value.length = 3 OrElse e.Sender.Value.length = 4 Then Else MessageBox.show("请输入3位或4位区号数字!") e.Cancel = True End If |
-- 作者:jq_shang -- 发布时间:2019/5/31 21:36:00 -- 只验证了长度啊。如何验证其必须为数字,而不能为字符? |
-- 作者:有点蓝 -- 发布时间:2019/5/31 21:40:00 -- 参考:http://www.foxtable.com/webhelp/scr/0610.htm |
-- 作者:jq_shang -- 发布时间:2019/5/31 21:51:00 -- 谢谢蓝版主! |
-- 作者:jq_shang -- 发布时间:2019/5/31 22:05:00 -- 上面帮助版面是验证判断单个字符或数字的,还是没太搞明白,如何在代码中,用like方法来验证一串字符或数字? |
-- 作者:有点蓝 -- 发布时间:2019/5/31 22:34:00 -- 比如: If e.Sender.Value.length = 3 OrElse e.Sender.Value.length = 4 Then For Each c As Char In e.Sender.Value If Char.IsDigit(c) = False Then MessageBox.show("请输入数字!") e.Cancel = True Return End If Next Else MessageBox.show("请输入3位或4位区号数字!") e.Cancel = True End If 又比如 If e.Sender.Value.length = 3 OrElse e.Sender.Value.length = 4 Then If Val(e.Sender.Value) = 0 MessageBox.show("请输入数字!") e.Cancel = True End If Else MessageBox.show("请输入3位或4位区号数字!") e.Cancel = True End If 又比如: If e.Sender.Value.length = 3 OrElse e.Sender.Value.length = 4 Then Dim d As Integer If Integer.TryParse( e.Sender.Value,d) = false MessageBox.show("请输入数字!") e.Cancel = True End If Else MessageBox.show("请输入3位或4位区号数字!") e.Cancel = True End If |
-- 作者:jq_shang -- 发布时间:2019/5/31 22:41:00 -- 哦哦,这么复杂呀!谢谢蓝版主! |