首页 > 编程 > Regex > 正文

比较不错的C#中的常用的正则表达式

2020-03-16 21:20:38
字体:
来源:转载
供稿:网友

为了能够更好地理解如何在C#环境中使用正则表达式,我写出一些对你来说可能有用的正则表达式,这些表达式在其他的环境中都被使用过,希望能够对你有所帮助。

罗马数字

stringp1="^m*(d?c{0,3}|c[dm])"+"(l?x{0,3}|x[lc])(v?i{0,3}|i[vx])$";

stringt1="vii";

Matchm1=Regex.Match(t1,p1);

交换前二个单词

stringt2="thequickbrownfox";

stringp2=@"(/S+)(/s+)(/S+)";

Regexx2=newRegex(p2);

stringr2=x2.Replace(t2,"$3$2$1",1);

关健字=值

stringt3="myval=3";

stringp3=@"(/w+)/s*=/s*(.*)/s*$";

Matchm3=Regex.Match(t3,p3);

实现每行80个字符

stringt4="********************"

+"******************************"

+"******************************";

stringp4=".{80,}";

Matchm4=Regex.Match(t4,p4);

月/日/年小时:分:秒的时间格式

stringt5="01/01/0116:10:01";

stringp5=@"(/d+)/(/d+)/(/d+)(/d+):(/d+):(/d+)";

Matchm5=Regex.Match(t5,p5);

改变目录(仅适用于Windows平台)

stringt6=@"C:/DocumentsandSettings/user1/Desktop/";

stringr6=Regex.Replace(t6,@"//user1//",@"//user2//");

扩展16位转义符

stringt7="%41";//capitalA

stringp7="%([0-9A-Fa-f][0-9A-Fa-f])";

stringr7=Regex.Replace(t7,p7,HexConvert);

删除C语言中的注释(有待完善)

stringt8=@"

/*

*传统风格的注释

*/

";

stringp8=@"

//*#匹配注释开始的定界符

.*?#匹配注释

/*/#匹配注释结束定界符

";

stringr8=Regex.Replace(t8,p8,"","xs");

删除字符串中开始和结束处的空格

stringt9a="leading";

stringp9a=@"^/s+";

stringr9a=Regex.Replace(t9a,p9a,"");

stringt9b="trailing";

stringp9b=@"/s+$";

stringr9b=Regex.Replace(t9b,p9b,"");

在字符/后添加字符n,使之成为真正的新行

stringt10=@"/ntest/n";

stringr10=Regex.Replace(t10,@"//n","/n");

转换IP地址

stringt11="55.54.53.52";

stringp11="^"+

@"([01]?/d/d|2[0-4]/d|25[0-5])/."+

@"([01]?/d/d|2[0-4]/d|25[0-5])/."+

@"([01]?/d/d|2[0-4]/d|25[0-5])/."+

@"([01]?/d/d|2[0-4]/d|25[0-5])"+

"$";

Matchm11=Regex.Match(t11,p11);

删除文件名包含的路径

stringt12=@"c:/file.txt";

stringp12=@"^.*//";

stringr12=Regex.Replace(t12,p12,"");

联接多行字符串中的行

stringt13=@"thisis

asplitline";

stringp13=@"/s*/r?/n/s*";

stringr13=Regex.Replace(t13,p13,"");

提取字符串中的所有数字

stringt14=@"

test1

test2.3

test47

";

stringp14=@"(/d+/.?/d*|/./d+)";

MatchCollectionmc14=Regex.Matches(t14,p14);

找出所有的大写字母

stringt15="ThisISaTestOFALLCaps";

stringp15=@"(/b[^/Wa-z0-9_]+/b)";

MatchCollectionmc15=Regex.Matches(t15,p15);

找出小写的单词

stringt16="ThisisATestoflowercase";

stringp16=@"(/b[^/WA-Z0-9_]+/b)";

MatchCollectionmc16=Regex.Matches(t16,p16);

找出第一个字母为大写的单词

stringt17="ThisisATestofInitialCaps";

stringp17=@"(/b[^/Wa-z0-9_][^/WA-Z0-9_]*/b)";

MatchCollectionmc17=Regex.Matches(t17,p17);

找出简单的HTML语言中的链接

stringt18=@"

 

firsttagtext

nexttagtext

 

";

stringp18=@"]*?HREF/s*=/s*[""']?"+@"([^'"">]+?)['""]?>";

MatchCollectionmc18=Regex.Matches(t18,p18,"si");

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表