• .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);
                  }
              }
            
        }   
       
    }

  • 相关阅读:
    使用Maven快速创建一个SpringMVC工程步骤
    签到
    yaml简介
    APP定位元素之UiSelector
    js中var、let、const区别
    用Jquery去写树结构
    正则相关的知识分享
    python常见问题
    Vue.js 的一些小技巧
    关于jsp删除成功,添加成功等之后 页面自动跳转的js写法
  • 原文地址:https://www.cnblogs.com/dyufei/p/2573948.html
Copyright © 2020-2023  润新知