首页 > 代码库 > C#正则表达式
C#正则表达式
下面我简要介绍一下C#中正则表达式的常用形式
常用的方法有:
Regex.IsMatch(value,pattern) 返回true 或者false
Match match = Regex.Match(input, pattern);
Regex.Replace(input,pattern,replacement)
Regex.Split(input,pattern)
具体使用详情还是看代码:
static void Main(string[] args) { //RegexIsMatch(); //RegexMatch(); //RegexReplace(); //RegexSplit(); Matches(); Console.ReadLine(); } /// <summary> /// 最基本的方法判断是否匹配 /// </summary> static void RegexIsMatch() { string[] values = { "111-22-3333", "111-2-3333" }; string pattern = @"^\d{3}-\d{2}-\d{4}$"; foreach(var value in values) { if(Regex.IsMatch(value,pattern)) { Console.WriteLine("{0} is valid",value); } else { Console.WriteLine("{0} is not valid", value); } } } /// <summary> /// match方法返回Match类型 /// </summary> static void RegexMatch() { string input = "This is TianYun TianYun"; string pattern = @"\b(\w+)\s(\1)\b"; Match match = Regex.Match(input, pattern); while (match.Success) { Console.WriteLine("Duplication {0} found",match.Groups[0].Value); match = match.NextMatch(); } } /// <summary> /// Replace method $& is the matched string,and the $$ is $ /// </summary> static void RegexReplace() { string input = "Total cost:103.44"; string pattern = @"\b\d+\.\d{2}\b"; string replacement = "$$$&"; Console.WriteLine(Regex.Replace(input,pattern,replacement)); } /// <summary> /// split string by pattern, return array /// </summary> static void RegexSplit() { string input = "1. egg 2. bread 3. milk 4. coffee"; string pattern = @"\b\d\.\s"; foreach (var s in Regex.Split(input,pattern)) { if (!string.IsNullOrEmpty(s)) { Console.WriteLine(s); } } } /// <summary> /// return Matches /// </summary> static void Matches() { MatchCollection matchs = Regex.Matches("abc123abc42abc54", @"abc"); foreach (Match match in matchs) { Console.WriteLine("{0} is found at {1}",match.Value,match.Index); Console.WriteLine("{0}",match.Result("$& hello This is match.Result")); } }
C#正则表达式
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。