zoukankan      html  css  js  c++  java
  • 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);
                    }
                }
            }
  • 相关阅读:
    年报统计系统—基本信息模块的目标文档
    用户分析
    第一周第三天
    第一周第二天
    第一周第一天
    学习进度条第三周
    学习进度表第二周
    四则运算2
    构建之法阅读笔记 01
    软件工程概论学习进度表第一周
  • 原文地址:https://www.cnblogs.com/handsomer/p/4555008.html
Copyright © 2011-2022 走看看