zoukankan      html  css  js  c++  java
  • .NET中的正则表达式(二)Regex 类

      Regex

        表示不可变的正则表达式,包含若干静态方法,无需显式创建 Regex 对象即可使用正则表达式。使用静态方法等效于构造 Regex 对象,使用该对象一次然后将其销毁。

        Regex 类是不可变(只读)的,并且具有固有的线程安全性。可以在任何线程上创建 Regex 对象,并在线程间共享。

        Regex r; // 声明一个 Regex类的变量

        r = new Regex("//s2000"); // 定义表达式

        等价于

        Regex r=new Regex("//s2000"); Regex r=new Regex(@"/s2000");

        构造函数:

        Regex ()

        初始化 Regex 类的新实例。

        由 .NET Compact Framework 支持。

        Regex (String)

        为指定的正则表达式初始化并编译 Regex 类的一个新实例。

        由 .NET Compact Framework 支持。

        Regex (SerializationInfo, StreamingContext)

        使用序列化数据初始化 Regex 类的新实例。

        Regex (String, RegexOptions)

        用修改模式的选项为指定的正则表达式初始化并编译 Regex 类的一个新实例。

        由 .NET Compact Framework 支持。

         

        常用方法:

         

        说明

         

        CompileToAssembly

        已重载。 编译正则表达式,并将其保存到单个程序集的磁盘中。

        Equals 

        已重载。 确定两个 Object 实例是否相等。 (从 Object 继承。)

        Escape

        通过替换为转义码来转义最小的元字符集(/、*、+、?、|、{、[、(、)、^、$、.、# 和空白)。

        GetGroupNames

        返回正则表达式的捕获组名数组。

        GetGroupNumbers

        返回与数组中的组名相对应的捕获组号的数组。

        GetHashCode 

        用作特定类型的哈希函数。GetHashCode 适合在哈希算法和数据结构(如哈希表)中使用。 (从 Object 继承。)

        GetType 

        获取当前实例的 Type。 (从 Object 继承。)

        GroupNameFromNumber

        获取与指定组号相对应的组名。

        GroupNumberFromName

        返回与指定组名相对应的组号。

        IsMatch

        已重载。 指示正则表达式在输入字符串中是否找到匹配项。

        Match

        已重载。 在输入字符串中搜索正则表达式的匹配项,并将精确结果作为单个 Match 对象返回。

        Matches

        已重载。 在输入字符串中搜索正则表达式的所有匹配项并返回所有成功的匹配,就像多次调用Match 一样。

        ReferenceEquals 

        确定指定的 Object 实例是否是相同的实例。 (从 Object 继承。)

        Replace

        已重载。 用指定的替换字符串替换由正则表达式定义的字符模式的所有匹配项。

        Split

        已重载。 在由正则表达式匹配项定义的位置将输入字符串拆分为一个子字符串数组。

        ToString

        已重写。 返回传入 Regex 构造函数的正则表达式模式。

        Unescape

        取消转义输入字符串中的任何转义字符。

          受保护的方法

        名称

        说明

        Finalize 

        允许 Object 在“垃圾回收”回收 Object 之前尝试释放资源并执行其他清理操作。

        InitializeReferences

        CompileToAssembly 方法生成的 Regex 对象使用。

        MemberwiseClone 

        创建当前 Object 的浅表副本。 (从 Object 继承。)

        UseOptionC

        CompileToAssembly 方法生成的 Regex 对象使用。

        UseOptionR

        CompileToAssembly 方法生成的 Regex 对象使用。

         

        属性

        名称

        说明

        CacheSize

        获取或设置已编译正则表达式的当前 Regex 对象的缓存中的最大项数。

        Options

        返回传入 Regex 构造函数的选项。

        RightToLeft

        获取一个值,该值指示正则表达式是否从右向左进行搜索。

         

        示例

        下面的代码示例演示如何使用正则表达式检查字符串是否具有表示货币值的正确格式。注意,如果使用 ^ 和 $ 封闭标记,则指示整个字符串(而不只是子字符串)都必须匹配正则表达式。

        C#

        using System;
        using System.Text.RegularExpressions;

        public class Test
        {

           
        public static void Main ()
            {

                 
        // Define a regular expression for currency values.
                  Regex rx =
        new Regex(@"^-?/d+(/./d{2})?$");
                 
                 
        // Define some test strings.
                 
        string[] tests = {"-42", "19.99", "0.001", "100 USD"};
                 
                 
        // Check each test string against the regular expression.
                 
        foreach (string test in tests)
                  {
                     
        if (rx.IsMatch(test))
                      {
                          Console.WriteLine(
        "{0} is a currency value.", test);
                      }
                     
        else
                      {
                          Console.WriteLine(
        "{0} is not a currency value.", test);
                      }
                  }
                
            }   
           
        }

  • 相关阅读:
    win10 IP ping不通解决
    Oracle配置远程连接,添加新的IP地址,必须保存原来的127.0.0.1,否则都不能连接
    【赵强老师】Kafka的体系架构
    【赵强老师】在Hive中使用Load语句加载数据
    【赵强老师】什么是PL/SQL?
    【赵强老师】在MongoDB中使用游标
    【赵强老师】如何分析Java的内存溢出问题
    【赵强老师】Kubernetes平台中日志收集方案
    【赵强老师】Redis的消息发布与订阅
    【赵强老师】数据库的事务
  • 原文地址:https://www.cnblogs.com/dyufei/p/2573944.html
Copyright © 2011-2022 走看看