本文以示例的形式进行分布讲解:
string Pattern = @"\bn";
(1)\b表示以什么字母开头的字符串,\bn表示以n开头的字符
(2)如果不加@,则会理解为退格+n的字符串。
同样的道理
string Pattern = @"ion\b";
表示以ion结尾的字符。
string Pattern = @"\ba\S*ion\b";
(1)表示以a开头,以ion结尾的
(2)*表示任意字符,但是必须依托于具体的字符,\S表示不是空白的字符,注意不是空字符串,这样限制后,则表示是以a开头,ion结尾的,中间可以是任意不能为空白字符的字符。
^ 输入文本的开头 $ 输入文本的结尾
. 除了换行字符(\n)以外的所有单个字符 * 可以重复0次或多次的前导字符
+ 可以重复1次或多次的前导字符 ? 可以重复0次或1次的前导字符
\s 任何空白字符 \S 任何不是空白的字符
\b 字边界 \B 不是字边界的位置
\BX\B 字中间的任何X
ion\b 以ion结尾的任何字
\SF aF、rF、cF、但不能是\tf
ra*t rt、rat、raat和raaat等
(1)可以使用转义字符,例如要搜索“.”,则可以使用“\.”
(2)可以把可替换的字符放在方括号中,请求匹配包含这些字符。例如,[1|c]表示字符可以是l或c。如果要搜索map或man,可以使用序列ma[n|p]。
(3)在方括号中,也可以指定一个范围,
例如[a-z]表示所有的小写字母,
[A-E]表示A到E之间的所有大写字母,
[0-9]表示一个数字。
(4)如果要搜索一个整数(该序列只包含0到9的字符),就可以编写[0-9]+(注意,使用+字符表示至少要有这样一个数字,但可以有多个数字,所以9、 83和 854等都是匹配的)。
限定符
{ n }
指定恰好 n 个匹配;例如 (pizza){2}。
{ n ,}
指定至少 n 个匹配;例如 (abc){2,}。
{ n , m }
指定至少 n 个但不多于 m 个匹配。例如(abc){2,3}
补充占位符
\w 相当于a-z或者A-Z或者0-9或者_的任何字符。 \w 等效于 [a-zA-Z_0-9]。
\W 相当于不是a-z或者A-Z或者0-9或者_的任何字符。则 \W 等效于 [^a-zA-Z_0-9]。
规则
^ 输入文本的开头
$ 输入文本的结尾
. 除了换行字符(\n)以外的所有单个字符
* 可以重复0 次或多次的前导字符
+ 可以重复1 次或多次的前导字符
? 可以重复0 次或1 次的前导字符
\s 任何空白字符
\S 任何不是空白的字符
\b 字边界
\B 不是字边界的位置
举例
^B B,但只能是文本中的第一个字符
X$ X, 但只能是文本中的最后一个字符
i.ation isation、ization
ra*t rt、rat、raat 和raaat 等
ra+t rat、raat 和raaat 等(但不能是rt)
ra?t 只有rt 和 rat 匹配
\sa [space]a、\ta、\na(\t 和\n 与C#的\t 和\n 含义相同)
\SF aF、rF、cF、但不能是\tf
ion\b 以ion 结尾的任何字
\BX\B 字中间的任何X
具体事例:
1:【数字、 单个】例如 01
--2:【数字、 分组】例如 73,73,73
--3:【数字 分隔】例如 06-07
--4:【字符 单个字符】例如 A
--5:【字符、字符数字】例如 A00
--6:【字符、字符分隔】例如 A15.0-A15.3
--7:【字符、分隔分组】例如 Q00-Q04,Q06-Q07
--8:【字符、 分组】例如 S02,S12,S22,S32,S42,T52
1. \d
2. @"^(\d+\,)*\d\b$"
3. @"^\d+\-\d+$"
4. @"^[a-zA-Z]{1}$"
5. @"^[a-zA-Z]{1}\d+$"
6. @"^[a-zA-Z]{1}\d+-[a-zA-Z]{1}\d+$"
7. @"^([a-zA-Z]{1}\d+-[a-zA-Z]{1}\d+)+$"
8. @"^([a-zA-Z]{1}\d+\,)*[a-zA-Z]{1}\d+\b$"
更详细请参见CSDN:http://blog.csdn.net/fatfoxz/archive/2010/01/14/5188675.aspx
分享到:
相关推荐
《C#正则表达式快速入门》一文深入浅出地介绍了正则表达式这一强大而灵活的文本处理工具在C#编程环境下的应用。正则表达式,因其能够高效地进行模式匹配、搜索和替换等操作,在数据验证、文本处理、搜索与替换等场景...
在编程领域,C#语言提供了一种强大的工具——正则表达式,用于处理字符串和进行模式匹配。本教程将深入探讨C#中的正则表达式基础,帮助你掌握这一核心技能。 1. **正则表达式简介** 正则表达式(Regular ...
这是一个非常好用的正则表达式工具,可以在上面测试你想到的正则表达式,而且可以把正则表达式保存下来供下次调用,也可以方便地帮你生成C#代码...另外还附上了一个30分钟快速入门的正则表达式入门教程,希望大家喜欢。
正物色一本学习正则表达式的入门图书?恭喜,《学习正则表达式》非常适合你!本书提供大量经典简洁的示例,从零开始教你逐步掌握正则表达式。通过匹配特定单词、字符和模式,读者很快就可以自己动手使用正则表达式...
本教程旨在为C#开发者提供正则表达式的基础知识,帮助理解正则表达式的概念、语法和常见用途。通过学习,你将能够编写和使用正则表达式进行文本匹配、验证和处理。 2. **如何使用本教程** 本教程适合对正则表达式...
### C#正则表达式快速入门 #### 一、引言 正则表达式是一种强大的文本处理工具,它能够帮助开发者高效地完成字符串的搜索、替换等操作。对于很多初学者来说,面对像“\w+@\w+\.\w{1,3}”这样的表达式可能会感到困惑...
### C#正则表达式入门指南 #### 一、引言 正则表达式是一种强大的文本处理工具,它能够帮助开发者高效地进行字符串的搜索、替换等操作。在C#编程语言中,正则表达式的应用非常广泛,尤其是在数据验证、文本解析等...
本快速入门将带你走进C#正则表达式的精彩世界,帮助你理解和掌握这一核心技能。 一、正则表达式基础 1. 正则表达式模式:正则表达式由特殊字符(如`^`、`$`、`.`、`*`、`+`、`?`、`|`、`(`、`)`、`{}`、`[]`、`\`等...
在多种编程语言中,如Perl、Java、JavaScript、C#、PHP、Python、Ruby、Tcl、MySQL、Oracle等,正则表达式都扮演着重要的角色。 学习正则表达式可以做以下事情: 1. **查找字符串**:你可以使用正则表达式来检查一...
正则表达式可以从基础到高级,逐步掌握,涵盖多个编程语言,如C#、ASP.NET等。 在C#中,正则表达式主要通过`System.Text.RegularExpressions`命名空间中的类来实现,如`Regex`类。`Regex`类提供了许多方法,如`...
在编程世界中,正则表达式(Regular Expression)是一种强大的文本处理工具,广泛应用于数据验证、文本搜索和替换等场景...建议结合《C#正则表达式30分钟入门教程.doc》文档进行学习,以便更直观地理解和运用这些知识。
本教程旨在为初学者提供一个快速入门C#正则表达式的指南。 1. **什么是正则表达式?** 正则表达式,简称regex,是一种特殊的文本字符串,用于描述一个或多个字符模式。它们在许多编程语言中被用来搜索、验证和操作...
正则表达式不仅适用于JAVA,还广泛应用于Python、JavaScript、C#等语言。 在JAVA中,正则表达式的使用基于`java.util.regex`包,提供了`Pattern`和`Matcher`两个主要类。`Pattern`类用于编译正则表达式,而`Matcher...
[2]正则表达式30分钟入门教程.pdf] [3]正则表达式规则.doc [4]正则表达式30分钟入门教程.mht 自己整理用的,现在分享一下吧。 当然也是为了赚一些分数,这年头,到那个网站都要注册,注册好了还要挣分数,...
"C# 正则表达式 20分钟 从入门到精通"这本电子书,旨在帮助学习者快速理解并运用正则表达式,让C#程序员在短短半小时内就能掌握其基本用法。 首先,我们要了解C#中的正则表达式主要通过System.Text.Regular...
在本文中,我们将深入探讨C#正则表达式的基础知识,包括涉及的基本类、字符匹配语法、重复语法、定位语法以及转义语法。 1. **基本的类**: - `Regex`: 这是正则表达式的核心类,包含了执行匹配、替换、分割等操作...
目前,正则表达式已经在很多软件中得到广泛...为了简单有效而又不失强大,造成了正则表达式代码的难度较大,学习起来也不是很容易,所以需要付出一些努力才行,入门之后参照一定的参考,使用起来还是比较简单有效的
例如,在C++中,你可以使用Boost库提供的`boost::regex`类来处理正则表达式,而在C#中,可以使用`System.Text.RegularExpressions`命名空间中的`Regex`类。 正则表达式在文本处理、数据验证、日志分析等领域有广泛...