.net c#中应用正则表达式分组

本文介绍了一种使用正则表达式从复杂数据库连接字符串中提取关键信息的方法。通过一个具体的例子展示了如何匹配并获取provider、server、database等字段的值。
string strRegexConn = @"((?:server=(?<server>[^;\(\)]+)[;]).*(?:provider=(?<provider>[^;]+);).*(?:host=(?<host>[\w\d\.]+)).*(?:port=(?<port>\d+)).*(?:service_name=(?<servicename>[^\(\)]+)).*(?:user\sid=(?<userid>[^;]+)).*(?:password=(?<password>[^;]+)))|(?:provider=(?<provider>[^;]+);).*?(?:server=(?<server>[^;\(\)]+)[;]).*?(?:database=(?<database>[^;]+).*?(?:user\sid=(?<userid>[^;]+)).*(?:password=(?<password>[^;]+)))";
string str="provider=Microsoft Sql Server 2000;server=172.16.10.100;database=ObxMetabaseHDDemo;User ID=sa;Password=123;MultipleActiveResultSets=True";
Regex r = new Regex(strRegexConn, RegexOptions.IgnoreCase);
Match m = r.Match(str);
string provider = m.Groups["provider"].Value;
string server= m.Groups["server"].Value;

备注:保证正则表达式是在同一行不然运行无法通过
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值