C#--正则表达式
Posted X·3
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#--正则表达式相关的知识,希望对你有一定的参考价值。
C#正则表达式
正则表达式 是一种匹配输入文本的模式。.Net 框架提供了允许这种匹配的正则表达式引擎。
模式由一个或多个字符、运算符和结构组成。
定义正则表达式
下面列出了用于定义正则表达式的各种类别的字符、运算符和结构。
- 字符转义
- 字符类
- 定位点
- 分组构造
- 限定符
- 反向引用构造
- 备用构造
- 替换
- 杂项构造
(1)字符转义
正则表达式中的反斜杠字符(\\)指示其后跟的字符是特殊字符,或应按原义解释该字符。
下表列出了转义字符:
(2)字符类
字符类与一组字符中的任何一个字符匹配。
下表列出了字符类:
(3)定位点
定位点或原子零宽度断言会使匹配成功或失败,具体取决于字符串中的当前位置,但它们不会使引擎在字符串中前进或使用字符。
下表列出了定位点:
(4)分组构造
分组构造描述了正则表达式的子表达式,通常用于捕获输入字符串的子字符串。
下表列出了分组构造:
(5)限定符
限定符指定在输入字符串中必须存在上一个元素(可以是字符、组或字符类)的多少个实例才能出现匹配项。 限定符包括下表中列出的语言元素。
下表列出了限定符:
(6)反向引用构造
反向引用允许在同一正则表达式中随后标识以前匹配的子表达式。
下表列出了反向引用构造:
(7)备用构造
备用构造用于修改正则表达式以启用 either/or 匹配。
下表列出了备用构造:
(8)替换
替换是替换模式中使用的正则表达式。
下表列出了用于替换的字符:
(9)杂项构造
下表列出了各种杂项构造:
(10)Regex 类
Regex 类用于表示一个正则表达式。
下表列出了 Regex 类中一些常用的方法:
如需了解 Regex 类的完整的属性列表,请参阅微软的 C# 文档。
实例 1
下面的实例匹配了以 'S' 开头的单词:
当上面的代码被编译和执行时,它会产生下列结果:
- Matching words that start with 'S':
- The Expression: \\bS\\S*
- Splendid
- Suns
实例 2
下面的实例匹配了以 'm' 开头以 'e' 结尾的单词:
当上面的代码被编译和执行时,它会产生下列结果:
- Matching words start with 'm' and ends with 'e':
- The Expression: \\bm\\S*e\\b
- make
- maze
- manage
- measure
实例 3
下面的实例替换掉多余的空格:
当上面的代码被编译和执行时,它会产生下列结果:
- Original String: Hello World
- Replacement String: Hello World
以上是关于C#--正则表达式的主要内容,如果未能解决你的问题,请参考以下文章