首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

这样的字符串应当怎么拆分成数组,多谢

2012-01-01 
这样的字符串应当如何拆分成数组,谢谢数据格式如下:(其中有个中间有,号)publist( 220929 , 67 , 美洲金盃

这样的字符串应当如何拆分成数组,谢谢
数据格式如下:(其中有个 ' '中间有,号)

publist( '220929 ', '67 ', '美洲金盃 ', '3032 ', '3031 ', '墨西哥,丹麦 ', '巴拿馬 ', 'H ');
publist( '220930 ', '68 ', '美洲金盃 ', '3033 ', '3031 ', '埃及,丹麦 ', '巴拿馬 ', 'H ');

要求得出数组

a[0]是等于   220929
.
.
a[5]是等于   墨西哥,丹麦
.
.
这样的数组,有什么办法可以解决


[解决办法]
如果是插入到数据库,直接得到数据插入就行了吧

因为需要多少个数组事先是未知的,动态创建数组很麻烦,可以建个二维数组,但是也没那个必要吧

//这里得到第一个 '220929 ', '67 ', '美洲金盃 ', '3032 ', '3031 ', '墨西哥,丹麦(ab/cc) ', '巴拿馬 ', 'H '这样的集合
MatchCollection mc1 = Regex.Matches(yourStr, @ "(? <=publist\()[\s\S]*?(?=\);) ", RegexOptions.IgnoreCase);
foreach (Match m1 in mc1)
{
//对每条记录单独处理
MatchCollection mc2 = Regex.Matches(m1.Value, @ " '(? <content> [^ ']*) ' ");
foreach (Match m2 in mc2)
{  //这里就是最好输出的内容了,可以在这里处理,直接插入数据库
richTextBox2.Text += m2.Groups[ "content "].Value + "\n ";
}
}

热点排行