现在的位置: 首页 > 综合 > 正文

C#中使用正则表达式

2012年01月19日 ⁄ 综合 ⁄ 共 1541字 ⁄ 字号 评论关闭

学了正则表达式5D东东,却从来都没用过,留下做个记录。

 

 

下面是验证输入的是否IP地址的格式:

using System.Text.RegularExpressions;
string s_reg = @"^([1-9]|[1-9]/d|(1/d{2}|2[0-5][0-5]))/.([0-9]|[1-9]/d|(1/d{2}|2[0-5][0-5]))/.([0-9]|[1-9]/d|(1/d{2}|2[0-5][0-5]))/.([0-9]|[1-9]/d|(1/d{2}|2[0-5][0-5]))$";
           
string s = cbLanIP.Text;
            Regex reg
= new Regex(s_reg);
           
if (reg.IsMatch(s))
            { }
           
else
            {
                MessageBox.Show(
"IP地址格式错误!","提示!");
            }

 

匹配网址URL的正则表达式:[a-zA-z]+://[^s]*
评注:网上流传的版本功能很有限,上面这个基本可以满足需求

--------------------------

身份证正则:^(/d{15}$|^/d{18}$|^/d{17}(/d|X|x))$

--------------------------

正整数:^/d+$

--------------------------

油箱(没有判断域名):/w+([-+.]/w+)*@/w+([-.]/w+)*/./w+([-.]/w+)*

油箱(能匹配 .cn 等的域名):^[/w-/.]{2,25}/@[/w-]{2,35}(?:(?:/.(?:com|net|org|gov))|(?:/.[a-z]{2}(?=/.cn)))?/.(?:com|cn|mobi|tel|asia|net|org|name|me|tv|cc|hk|biz|info)$

--------------------------

解析中英文混排内容:[/u4e00-/u9fa5]+|[a-zA-Z//s]+

                                  举例:string ptn = "[/u4e00-/u9fa5]+|[a-zA-Z//s]+";
            System.Text.RegularExpressions.Regex reg = new System.Text.RegularExpressions.Regex(ptn);
            string z = "中国China我爱你I love you";

            foreach (Match m in reg.Matches(z))
            {
                Console.WriteLine(m.Value);
            }

--------------------------

计算字符串中的中文字个数:System.Text.RegularExpressions.Regex reg = new System.Text.RegularExpressions.Regex("[/u4e00-/u9fa5]", System.Text.RegularExpressions.RegexOptions.Multiline);

string strTemp = "所覆盖到法国萨股份共花费少个";

MessageBox.Show(reg.Matches(strTemp).Count.ToString());

--------------------------

抱歉!评论已关闭.