zoukankan      html  css  js  c++  java
  • 正则表达式用法

    正则表达式在javascript中的一般用法:

    eg: 前端验证Email的格式是否正确

      function ValidEmail()
            {
                if(RequiredName())
                {
                    if( $.trim($("#Email").val())=="")
                    {
                        return true;
                    }
                    else
                    {
                        var email = document.getElementById("Email");
                        var emailreg = /^([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/;
                        if(!emailreg.test(email.value))
                        {
                            alert('提示\n请输入有效的E_mail!');
                            $("#Email").focus();
                            return false;
                        }
                        else
                        {
                            return true;
                        }
                    }
                }
            }

    说明:验证Email格式是否正确,可以为空。

    接下来 <asp:Button ID="btn_Save" CssClass="button" runat="server" Text="保存" OnClick="btn_Save_Click"
                                OnClientClick="return ValidEmail();"

    即可。

    正则表达式在C#中一般用法:

    using System.Text.RegularExpressions;

    1.检查数据格式是否错误。

    string TestRegex = @"^[-+]?\d+(\.\d+)?$";

     if (!Regex.IsMatch(txtLongitude.Text.Trim(), TestRegex ) || !Regex.IsMatch(txtLatitude.Text.Trim(), TestRegex ))
     {
                 ClientScript.RegisterStartupScript(this.GetType(), "", "<script>alert('经纬度格式错误!');</script>");

     }

    2.找出匹配的数据,并取得

    eg:

            //构造解析表格数据的正则表达式
    Regex regex = new Regex(@"<tr[^<]*<td>(.*?)</td>[^<]*<td>(.*?)</td>[^<]*<td>(.*?)</td>[^<]*<td>(.*?)</td>[^<]*<td>(.*?)</td>[^<]*<td>(.*?)</td>[^<]*<td>(.*?)</td>[^<]*<td>(.*?)</td>[^<]*<td>(.*?)</td>[^<]*</tr>|tr[^<]*<td>(?<breed>.*?)</td>[^<]*\s.*?[^<]*<td>(?<makings>.*?)</td>[^<]*\s.*?[^<]*<td>(?<format>.*?)</td>[^<]*\s.*?[^<]*<td>(?<steelFactory>.*?)</td>[^<]*\s.*?[^<]*<td>(?<address>.*?)</td>[^<]*\s.*?[^<]*<td>(?<price>.*?)</td>[^<]*\s.*?[^<]*<td>(?<upToDate>.*?)</td>[^<]*\s.*?[^<]*<td><span[^>]*>(?<riseOrTransfer>.*?)</span></td>[^<]*\s.*?[^<]*<*.*?>[^<]*\s.*?[^<]*<td>*.*?></td>[^<]*\s.*?[^<]*<*.*?>\s[^<]*</tr>",
                   RegexOptions.Compiled | RegexOptions.IgnoreCase);

    MatchCollection mc = regex.Matches(tb.Text);//tb.Text为存放的是从html页面读取的数据

    string[] array = new string[9];//构建数组,用于保存数据

    foreach (Match m in mc)
    {

        array[1] = m.Groups["breed"].Value;//匹配的值
            array[2] = m.Groups["makings"].Value;
            array[3] = m.Groups["format"].Value;
            array[4] = m.Groups["steelFactory"].Value;

        ......
    }

    接下来就可以将匹配的值存起。

  • 相关阅读:
    Python LED
    vmvare虚拟机经验
    Debian系统简要说明
    Android onclick监听事件打开新界面
    在国外搭个人服务器(顺便访问外网)
    生成指定时间内的 随机日起
    生成指定时间内的日期
    Mac 上查找javahome
    java 学习的网站
    Java 线程
  • 原文地址:https://www.cnblogs.com/zuoguanglin/p/2373260.html
Copyright © 2011-2022 走看看