正则表达式基础--元字符

一:元字符:

.:可以匹配任意单个任意字符

*:匹配前面的子表达式0个或者多个

+:匹配前面的子表达式1次或多次

?:匹配前面的子表达式0次或1次

{n}:匹配前面的子表达式出现n次

{n,m}:匹配前面的子表达式最少出现n次,最多出现m次

{n,}:匹配前面的子表达式最少出现n次,最多没有限制

二:元字符限制范围:

[,]:具体的几个值  [@] [.]

[0-9]:0 1 2 3 4 5 6 7 8 9 ;

[a-zA-Z0-9]:A~Z a~z 0~9全部的范围中的任意“一个”字符: \w  _

|:或者 ,只要满足其中一个条件就匹配

      Console.WriteLine(Regex.IsMatch(str, @"z|food"));只要包含z或者food就匹配

      Console.WriteLine(Regex.IsMatch(str, @"^z|food$"));必须以z开头,或者以food结尾才匹配。

():提高优先级

      Console.WriteLine(Regex.IsMatch(str, @"^(z|f)ood$"));zood/food

^:排除在某一个范围或者值之外

^/$:开始和结束

三:元字符的简写表达式:

转义字符:

\d:代表单个数字 【0-9】\d{3}

\D:代表单个非数字

\s:换行 ,制表符,确认,空格

\S:你能看到的都算

\w:匹配字母或数字或下划线或汉字,即能组成单词的字符 [0-9 a-z A-Z _] 

\W:特殊字符 

四:字符串提取

1.先创建好符合规则的正则表达式

2.将部分用()包含

3.书写如下的代码:如  

 1 string str = "192.168.10.5[port=21,type=ftp]";
 2 
 3             Match macth = Regex.Match(str, @"^(.+)[[].+=(\d{2}),.+=(.+)[]]$");
 4 
 5             if (macth.Success)
 6 
 7             {
 8 
 9                 Console.WriteLine(macth.Groups[1]);
10 
11                 Console.WriteLine(macth.Groups[2]);
12 
13                 Console.WriteLine(macth.Groups[2]);
14 
15             }  
View Code

 

  

posted @ 2013-06-15 02:03  maidol  阅读(310)  评论(0编辑  收藏  举报