C# 正则表达式学习笔记

常用符号

  • .:匹配任何单个字符(除了换行符)。
  • ^:匹配字符串的开始位置。
  • $:匹配字符串的结束位置。
  • *:匹配前面的子表达式零次或多次(贪婪模式)。
  • +:匹配前面的子表达式一次或多次(贪婪模式)。
  • ?:匹配前面的子表达式零次或一次,或使量词变为非贪婪模式。
  • {n}:匹配前面的子表达式恰好 n 次。
  • {n,}:匹配前面的子表达式至少 n 次。
  • {n,m}:匹配前面的子表达式至少 n 次,但不超过 m 次。
  • []:定义字符集。例如,[abc] 匹配 ab 或 c
  • [^]:匹配不在括号内的任何单个字符。例如,[^abc] 匹配除了 ab 和 c 之外的任何字符。
  • |:匹配左边或右边的表达式。例如,a|b 匹配 a 或 b
  • ():定义分组,用于捕获和应用子表达式。例如,(abc) 匹配 abc,并捕获它作为一个组。
  • \:转义字符,用于匹配特殊字符本身或引用捕获组。例如,\d 匹配任何数字,\1 引用第一个捕获组。

常见的字符类

  • \d:匹配任何数字,相当于 [0-9]
  • \D:匹配任何非数字字符。
  • \w:匹配任何字母、数字或下划线,相当于 [a-zA-Z0-9_]
  • \W:匹配任何非字母、非数字和非下划线的字符。
  • \s:匹配任何空白字符(包括空格、制表符、换行符等)。
  • \S:匹配任何非空白字符。

常用模式修饰符

  • (?i):不区分大小写模式。
  • (?m):多行模式,使 ^ 和 $ 匹配每一行的开始和结束。
  • (?s):单行模式,使 . 匹配换行符。
  • (?x):允许在正则表达式中添加注释和空格,使其更易于阅读。

捕获组和非捕获组

  • (abc):捕获分组,匹配 abc 并捕获它。
  • (?:abc):非捕获分组,只用于分组,但不捕获匹配的内容。

示例

  • ^\d{4}-\d{2}-\d{2}$:匹配形如 2024-08-19 的日期格式。
  • \b\w+\b:匹配单词边界上的一个或多个字母、数字或下划线。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值