欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

C#正则表达式匹配连续相同字符,如...aaa..bbb...11111...2222...

程序员文章站 2022-06-12 16:47:11
...

参考:https://blog.csdn.net/tao_sheng_yi_jiu/article/details/80366004

目的:匹配连续相同的3个数字或字母

string regExp = "(\\w)\1{2}";
//注意此处不要添加边界符号(^和$)
string str = "[email protected]$#[email protected]#$%%$#";
MatchCollection matchSet2 = Regex.Matches(str, regExp);
foreach (Match aMatch2 in matchSet2)
{
    Console.WriteLine(aMatch2.Groups[0].Captures[0]);
}
Console.ReadKey();

// 探究regExp中\1和{2}的作用
// 设regExp ="(\\w)\n{2}";
/* \1作用
n=1, 匹配str中的aaa;
n=2, 匹配str中的444;
n=3, 匹配str中的ddd(前一个);
n=4, 匹配str中的ddd(后一个);
*/
/* {2}作用
regExp中{2}大括号里面的2代表和前面的字符重复的个数,比如aaa,就是和第一个a后面跟着2个重复的a
\\w相当于[a-zA-Z0-9]
*/