正则表达式(Regex类)

本文介绍如何使用C#中的正则表达式进行文本处理,包括提取特定格式的数据、分割字符串及批量替换等操作,并提供了实际代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

命名空间:
System.Text.RegularExpressions

初始化Regex类
Regex regex = new Regex(正则表达式,RegexOptions.IgnoreCase | RegexOptions.Multiline);
IgnoreCase在匹配时忽略大小写,Multiline调整^和$的意义,改为匹配一行的开头和结尾。

Match()和Matches()方法:
Match()匹配一个结果;Matches()匹配多个结果
例:从一段字符串中提取一行连续数字
Regex regex = new Regex(@"/d+");
Match m = regex.Match("bei2008jing@163.com");
Console.WriteLine(m.Value.ToString());
输出结果:
2008

从一段字符串中提取所有数字
Regex regex = new Regex(@"/d+");
MatchCollection ms = regex.Matches("bei2008jing@163.com");
foreach(Match m in ms)
{
  Console.WriteLine(m.Value.ToString());
}
输出结果
2008
163

Split()函数:
单字符分割
string str = "11123332444";
string[] array = str.Split('2');
foreach(string s in array)
{
  Console.WriteLine(s);
}
输出结果:
111
333
444

多字符串分割:
1.string str = "11122223332222444";
string[] arrray = str.Split(new char[4]{'2','2','2','2'});
foreach(string s in array)
{
  Console.WriteLine(s);
}
输出结果:
111

 

333

 

444

2.string str = "11122223332222444";
string[] array = Regex.Split(str,"2222",RegexOption.IgnoreCase);
//Regex regex = new Regex("2222");
//string[] array = regex.Split(str);
foreach(string s in array)
{
  Console.WriteLine(s);
}
输出结果:
111
333
444

批量字符串替换:
string str = "11122223332222444";
//Regex regex = new Regex("2222");
//str = regex.Replace(str, "a");
str = Regex.Replace(str, "2222", "a");
Console.WriteLine(str);
Console.ReadLine();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值