C# 正则表达式
正则表达式是一种用来匹配字符串中字符组合的模式。
正则表达式是一种用于模式匹配和搜索文本的工具。
正则表达式提供了一种灵活且强大的方式来查找、替换、验证和提取文本数据。
正则表达式是由许多子表达式构建的 一个子表达式代表一种规则
1.创建正则表达式
字符串可以使用 @" " 进行创建 这种字符串的内容将会忽略转义字符并保留格式 写什么就是什么。正则表达式就是一个字符串 只是它是用字符串表示的一种匹配模式 \d匹配数字 \w匹配单词的模式.....
因为正则需要使用 \x 的模式 因此不能使用普通的字符串创建,程序会认识为\x式一种转义 所以一般使用 @" "
string s1 = "aaa\nbbb"; // \n 为换行
Console.WriteLine(s1);
string s2 = @"aaa\nbbb"; // \n 为子字符串
Console.WriteLine(s2);
2.可以使用Replace方法进行替换 正则匹配到的字符
string string1 = "123abc123abccba";
Regex reg1 = new Regex(@"a"); //匹配字符a,替换为*
Console.WriteLine(reg1.Replace(string1,"*"));
3、正则查询 Match Matches
Match 用于从指定的字符串中查询满足条件的第一个匹配项
// \u002f 等同于 /
string str = "123的骄?傲asjdk\u002f";
Console.WriteLine(str);//正则
Regex reg = new Regex(@"[\d/]");Match m = reg.Match(str);
Console.WriteLine(m.Value);
Console.WriteLine(reg.Match(str));
Matches 用于从指定的字符串中查询满足条件的所有匹配项
//MatchCollection 类表示成功的非重叠匹配的只读的集合
MatchCollection ms = reg.Matches(str);
foreach (Match item in ms)
{Console.WriteLine(item.Value);//遍历输出所有匹配项
}
// 获取匹配项的总数量
Console.WriteLine(ms.Count);
详细内容可参照:正则表达式 - 教程