• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

C#正则表达式参考

c# 海叔叔 4周前 (05-30) 8次浏览 已收录 0个评论

关键词
C# 正则表达式

摘要

正则表达式的用途非常广泛,基本上任何一门编程语言都用用到正则表达式。C#语言中的正则表达式跟微软一直以来使用的正则表达式基本相同。

C#正则表达式参考

正则表达式的用途非常广泛,基本上任何一门编程语言都用用到正则表达式。C#语言中的正则表达式跟微软一直以来使用的正则表达式基本相同。本文用作快速参考。

1、正则表达式的基本字符

\d 0-9的数字
\D \d的补集(以所以字符为全集,下同),即所有非数字的字符
\w 单词字符,指大小写字母、0-9的数字、下划线
\W \w的补集
\s 空白字符,包括换行符\n、回车符\r、制表符\t、垂直制表符\v、换页符\f
\S \s的补集
. 除换行符\n外的任意字符

2、用于定位的字符

所谓“定位字符”,就是用来确定一个位置,比如字符串开始处、结尾处、单词边界等。
^ 表示其后面的字符必须位于被匹配字符串的开始处
$ 表示其前面的字符必须位于被匹配字符串的结束处
\b 匹配一个单词的边界
\B 匹配一个非单词的边界
\A 前面的字符必须位于字符处的开始处
\z 前面的字符必须位于字符串的结束处
\Z 前面的字符必须位于字符串的结束处,或者位于换行符前

3、中括号匹配一个范围

[…] 匹配[]内所列出的所有字符
[^…] 匹配非[]内所列出的字符

4、重复字符

将前面的字符或字符串重复,具体如下:
{n} 匹配前面的字符n次
{n,} 匹配前面的字符n次或多于n次
{n,m} 匹配前面的字符n到m次
? 匹配前面的字符0或1次
+ 匹配前面的字符1次或多于1次
* 匹配前面的字符0次或式于0次

5、多选一匹配

C#正则表达式中使用小括号和竖线实现多个中选择一个的匹配方式 (|) ,如(12|ab|AB)表示匹配12或匹配ab或匹配AB。注意“|”与“()”此时是一个整体。

6、贪婪与非贪婪

在重复字符后面使用一个问号(?)可以让正则匹配处于“非贪婪模式”。默认情况下,正则匹配为“贪婪模式”。

7、回溯与非回溯

因为正则表达存在贪婪的问题,所以系统同时也赋予了它回溯的能力。当因为贪婪而匹配过头之后,还可以通过回溯再把前面的内容匹配出来。可以使用(?>贪婪内容)来禁止系统进行回溯。


喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址