您的位置:首页 > 其它

正则表达式——完美验证

2016-05-01 22:59 176 查看
    我们在编写程序时验证代码是必不可少的,手机号码验证,邮箱验证,url验证等等,有些验证是比较容易的,但是有些验证如果还用我们通常使用的方法验证就变的相当繁琐了,这时候就需要有个英雄站出来拯救我们了,他就是正则表达式。

    什么是正则表达式?

    官方解释:正则表达式使用单个字符串来描述,匹配一系列符合某个语法规则的字符串。

    个人理解:正则表达式相当于我们填写内容的一个模板,如果我们按照这个模板来填写就对,如果我们不按照这个模板来填写就不对。

    正则表达式中的元字符:

    



    DEMO

    元字符是干什么用的?我们来简单的举个例子。我们以验证电话号码为例。如我们想让有工会输入的电话号码的格式为0318-1234567,则我们的正则表达式可写成^0\d{2,3}-\d{7,8}$ 可见正则表达式是由元字符组成的,这个表达式的含义是,^表示字符串的开始,0表示是0开头的,\d表示0到9的任意一个数字,{2,3}表示重复2到3次,$表示字符串的结束(如果我们想查找元字符本身需要用到转义字符,除{2,3}这种形式的限制字符外,还有其他形式的限制字符)。

    实践应用

    正则表达式如何应用呢,以C#为例,首先我们新建工程,并引入System.Text.RegularExpressions命名空间,下面我们以验证邮箱的输入格式进行代码实战。在验证按钮下写如下代码:

    <span style="font-size:18px;"><strong> Regex abc = new Regex(@"^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$");
if (abc.IsMatch(textBox1.Text))
{
MessageBox.Show("是正确格式", "验证", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
else
{
MessageBox.Show("不是正确格式", "验证", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}</strong></span>    需要注意的是,像\w\d等转移字符只是正则表达式引擎认识的,C#编译器是不认识的,所以要在前面加上@符号,这样这个字符串就原样传给了正则表达式引擎。

   效果图

        错误格式

    



        正确格式

    



    写程序时如果有需要,我们知道运用它解决问题就可以了,有些正则表达式也确实比较复杂,我们要学会对一些常用的正则表达式的格式进行百度,然后根据自己的需要学会运用就可以了。

    
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  正则表达式 技术