C# 正则表达式

字母:

数字

单个数字d

非数字D

字符边界 

任意字符 .

字符点 .

或[abc]:匹配 a 或b 或c 都能匹配

重复多次   c{2} 匹配两个c

重复多次(范围)   b{2,3} 匹配重复2到3次b

重复多次(0-多次)  b* 匹配 0个到多个b

重复多次(1-多次)  b+ 匹配 1个到多个b

匹配单个  b? 匹配要么有b 要么没b

匹配空白 s(小s) 

匹配所有不是空白的地方 S(大S)

开头 ^

结尾 $

任意长度*

综合测试:

^abb.*b34$ 匹配例子的全部

解释 以abb开头,任意字符任意长度匹配, 最后以b34结尾

匹配一段 (abbc)

匹配所有 (.*)

所有字符 w(小写) 一个一个的匹配 (不包括符号)

除了所有字符 也就是符号 W(大写) 一个一个的匹配

string[] values = { "111-22-3333", "212-64-4321", "12133213232132" };
            string pattern = @"^d{3}-d{2}-d{4}";
            foreach (string a in values)
            {
                if (Regex.IsMatch(a, pattern))
                {
                    Console.WriteLine("{0} is valid", a);
                }
                else {
                    Console.WriteLine("{0} is not valid", a);
                }
            }
            Console.ReadLine();

 替换字符串

private static void RegexReplace()
        {
            string pattern = @"d+.d{2}";
            string replacement = @"$$$&";
            string input = "Total cost:103.64";
            Console.WriteLine(Regex.Replace(input, pattern, replacement));
        }

 分割字符串

private static void RegexSplit()
        {
            string input = "1. Egg 2. Bread 3. Mike 4. Coffe";
            string pattern = @"d{1,2}.s";
            foreach (string item in Regex.Split(input, pattern))
            {
                if (!string.IsNullOrEmpty(item))
                {
                    Console.WriteLine(item);
                }
            }
        }
原文地址:https://www.cnblogs.com/handsomer/p/4555008.html