(三十六)C#编程基础复习——C#正则表达式
正则表达式是一种匹配输入文本的模式,可以用于解析和验证给定文本以及模式之间是否匹配,模式可以包含运算符、字符字面值或结构。
如太明白可以参考这个博主的非常详细:C# 正则表达式 - 每日一bo - 博客园 (cnblogs.com)
一、正则表达式的组成
我们可以使用正则表达式检查给定字符串是否与指定模式相匹配。正则表达式的匹配是由一系列字符组成,其中可以包含数字、文字、运算符、字符等等。我们可以使用这些模式来搜索字符串或文字,并查看是否找到了匹配的项。开发中一般用正则表达式来验证用户输入的信息是否正确,比如邮件地址、手机号码等等。例如:转义字符、字符类、定位符、分组构造、限定符、反向引用构造、备用构造、替换、杂项构造。
二、示例代码
①匹配以“C”开头的词组
namespace _036
{
internal class Program
{
static void Main(string[] args)
{
string str = "C#教程 C语言中文网 c.biancheng.net正则表达式";
showMatch(str, @"\bC\S*");
Console.ReadKey();
}
private static void showMatch(string text,string expr)
{
Console.WriteLine("正则表达式为:"+expr);
Console.WriteLine("匹配以C开头的字符串");
MatchCollection mc = Regex.Matches(text, expr);
foreach (Match m in mc)
{
Console.WriteLine(m);
}
}
}
}
②匹配以“m”开头,以“e”
namespace _037
{
internal class Program
{
static void Main(string[] args)
{
string str = "make maze and message to measure it";
showMatch(str, @"\bm\S*e\b");
Console.ReadKey();
}
private static void showMatch(string text,string expr)
{
Console.WriteLine("正则表达式为:"+expr);
Console.WriteLine("匹配以“m”开头,以“e”结尾的单词:");
MatchCollection mc = Regex.Matches(text, expr);
foreach(Match m in mc)
{
Console.WriteLine(m);
}
}
}
}
③去除字符串中多余的空格
namespace _038
{
internal class Program
{
static void Main(string[] args)
{
string input = "C 语言 中文网";
string pattern = "\\s+";
Regex rgx = new Regex(pattern);
string result = rgx.Replace(input, "");
Console.WriteLine("原始字符串:{0}",input);
Console.WriteLine("替换后的字符串:{0}",result);
Console.ReadKey();
}
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了