C# 用正则表达式求字符数组

本文介绍使用C#中的正则表达式从字符串中提取特定格式的数据。通过两个示例方法展示了如何获取位于花括号{}

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

C# 用正则表达式求字符数组
string strParent = "qqqww{aaa}rrrrrr{bbb}zzzzzzz{ccc}xxxx";
欲求字符数组
string [] myList ={"aaa","bbb","ccc"}

方法一
public static System.Collections.ArrayList GetAry(string input)
{
System.Text.RegularExpressions.Regex r;
System.Text.RegularExpressions.Match m;
System.Collections.ArrayList ar = new System.Collections.ArrayList();

r = new System.Text.RegularExpressions.Regex(@"/{([ /S/t]*?)}",System.Text.RegularExpressions.RegexOptions.IgnoreCase);
for (m = r.Match(input); m.Success; m = m.NextMatch())
{
ar.Add(m.Groups[1].ToString());
}
return ar;
}

string strParent = "qqqww{aaa}rrrrrr{bbb}zzzzzzz{ccc}xxxx";
System.Collections.ArrayList ar = StGetAry(strParent);


方法二
private string[] StrToArray(string s)
{
MatchCollection mc = Regex.Matches(s, "{.*?}");
string[] res = new string[mc.Count];
for (int i = 0; i < mc.Count; i++)
{
res[i] = mc[i].Value.Substring(1, mc[i].Value.Length - 2);
}
return res;
}


调用的时候这样调用:
string a = "qqqww{aaa}rrrrrr{bbb}zzzzzzz{ccc}xxxx";
string[] b = StrToArray(a);
其中,b就是你要的那个东东:b={"aaa","bbb","ccc"} ;

记得引用这个:
using System.Text.RegularExpressions;
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值