查看: 2437|回复: 3

VB.Net下用正则表达式阻止非法字符输入 [复制链接]

hotpower (离线)
积分
82853
帖子
313
发表于 2009-4-3 00:11:19 |显示全部楼层
关键词: NET , 输入 , 正则表达式 , 字符

    Private Sub TextBox1_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
        Dim ch As Char = e.KeyChar
        If Not Regex.IsMatch(ch.ToString(), "^[\b\r0-9a-fA-F]$") Then
            e.KeyChar = "" '放弃输入的非法字符
            MessageBox.Show("请正确输入16进制数!!!", "系统提示", MessageBoxButtons.OK, MessageBoxIcon.Error)
        Else
            e.KeyChar = Char.ToUpper(ch) '强制转换为大写字母,放过退格和回车符
        End If
    End Sub
●█〓██▄▄▄▄▄▄ ●●●●●●→ ''''╭WWWW╮
▄▅██████▅▄▃▂ 传播非典灌水四方 ( ●_●)
███天█马█行█空████ '''',,,;,;,;'''/▇\''
◥⊙▲⊙▲⊙▲⊙▲⊙▲⊙▲◤ 群魔乱舞见阳光/MMMM\
alpha321 (离线)
积分
4631
帖子
209
发表于 2010-8-5 18:44:50 |显示全部楼层
Regex.IsMatch(ch.ToString(), "^[\b\r0-9a-fA-F]$") ,
很典型的应用,不错.
正则表达式功能的确很强大.
陈小东 (离线)
积分
40
帖子
429
发表于 2010-8-12 00:15:37 |显示全部楼层
哈哈 支持下
陈小东 (离线)
积分
40
帖子
429
发表于 2010-8-12 00:15:41 |显示全部楼层
哈哈 支持下
您需要登录后才可以发表评论 登录 | 立即注册

关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备11013910号 | 京公网安备11010502021702
回顶部