您的位置:首页 > 编程语言 > C#

C#中使用正则表达式

2010-04-22 16:11 169 查看
学了正则表达式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());

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