正则表达式 第五篇:C# 正则表达式

本文详细介绍了C#中的正则表达式,包括转义字符、字符类、定位符、量词、贪婪和懒惰模式、分组和捕获字符、零宽断言以及如何从格式化文本中提取信息。内容涵盖了元字符、字符组、正则表达式语法及其实例应用。
摘要由CSDN通过智能技术生成

本文整理C#正则表达式的元字符,正则表达式是由字符构成的表达式,每个字符代表一个规则,表达式中的字符分为两种类型:普通字符和元字符。普通字符是指字面含义不变的字符,按照完全匹配的方式匹配文本,而元字符具有特殊的含义,代表一类字符。

把文本看作是字符流,每个字符放在一个位置上,例如,正则表达式 “Room\d\d\d”,前面四个字符Room是普通字符,后面的字符\是转义字符,和后面的字符d组成一个元字符\d,表示该位置上有任意一个数字。

用正则表达式的语言来描述是:正则表达式 “Room\d\d\d”共捕获7个字符,表示“以Room开头、以三个数字结尾”的一类字符串,我们把这一类字符串称作一个模式(Pattern),也称作是一个正则。

一,转义字符

转义字符是\,把普通字符转义为具有特殊含义的元字符,常用的转义字符有:

  • \t:水平制表符
  • \v:垂直制表符
  • \r:回车
  • \n:换行
  • \\:表示字符 \,也就说,把转义字符 \ 转义为普通的字符 \
  • \":表示字符 ",在C#中,双引号用于定义字符串,字符串包含的双引号用 \" 来表示

二,字符类

在进行正则匹配时,把输入文本看作是有顺序的字符流,字符类元字符匹配的对象是字符,并会捕获字符。所谓捕获字符是指,一个元字符捕获的字符,不会被其他元字符匹配,后续的元字符只能从剩下的文本中重新匹配。

常用的字符类元字符:

  • [ char_group]:匹配字符组中的任意一个字符
  • [^char_group]:匹配除字符组之外的任意一个字符
  • [first-last]:匹配从first到last的字符范围中的任意一个字符,字符范围包括first和last。
  • .   :通配符,匹配除\n之外的任意一个字符
  • \w:匹配任意一个单词(word)字符,单词字符通常是指A-Z、a-z和0-9
  • \W:匹配任意一个非单词字符,是指除A-Z、a-z和0-9之外的字符
  • \s:匹配任意一个空白字符
  • \S:匹配任意一个非空白字符
  • \d:匹配任意一个数字字符
  • \D:匹配任意一个非数字字符

注意,转义字符也属于字符类元字符,在进行正则匹配时,也会捕获字符。

三,定位符

定位符匹配(或捕获)的对象是位置,它根据字符的位置来判断模式匹配是否成功,定位符不会捕获字符,是零

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

悦光阴

你的鼓励是我创作的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值