c#正则表达式入门

xiaoxiao2026-08-14  26

本文以示例的形式进行分布讲解: 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$"

 

 

 

 

更详细请参见:http://blog.csdn.net/fatfoxz/archive/2010/01/14/5188675.aspx

相关资源:C# 最全的日期正则表达式,没有之一
转载请注明原文地址: https://www.6miu.com/read-5051189.html

最新回复(0)