请教C# WinForm 如何分离字符串,谢谢! 比如:字符串如下:AAA-BB-234-KK...怎么样分别取出AAABBB234KK请不要告诉我用 substring()函数 , 因为,我的字符串的 - 符号是不确定。谢谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 string s = "AAA-BB-234-KK"; string[] ss = s.Split('-'); Split函数啊string s = "AAA-BB-234-KK";foreach(string ss in s.Split('-')){ MessageBox.Show(ss);} string s = "AAA-BB-234-KK";foreach(string ss in s.Split('-')){ MessageBox.Show(ss);}取第二个-后的值MessageBox.Show(s.Split('-')[2]); MessageBox.Show(s.Split('-')[2]); 哦,不好意思,可能我表达问题错了!我的原意应是这样!比如:AAA-BB-234-KKBB5K4-J55-U8L33-J5我要求取得的结果是:第1列 第2列 第3列 第4列AAA BBB 234 KKBB5K4 J55 U8L33 J5这样的。 那直接Replace那个-为空格不就完了s.Replace('-',' '); 肯定不能用replace ,我要单独地取出数据。 我的问题是这样的:Str的值如下:AA3-D3-J55-L4.jpgS34.jpgK4-J56-K4.jpgS22-102-K3-H4我要求向一个表中的S1,S2,S3,S4 写入值则我的结果应是:AA3 D3 J55 L4S34 空字符 空字符 空字符K4 J56 K4 空字符S22 102 K3 H4 其实你要单独取数据,大可以将数组存入string[]string s = "AAA-BB-234-KK";string[] temp = s.Split('-');int maxLengh = temp.Count;然后按照temp[0], temp[1], temp[2]....temp[maxLenght-1]这样取数据这是和5楼相同的意思,只不过当你不知道数组长度时,帮你找出数组长度。 还是用split啊,当你插入表数据时,判断下每一行都被split成的count够不够你的4列。不够就被空值了。拼sql而已。 string[] test = new string[] { "AA3-D3-J55-L4.jpg", "S34.jpg", "K4-J56-K4.jpg", "S22-102-K3-H4" };Regex reg = new Regex(@"([^-.]*)-?([^-.]*)?-?([^-.]*)?-?([^-.]*)?");foreach (string s in test){ Match m = reg.Match(s); richTextBox2.Text += "源字符串:" + s + ",匹配结果:\n"; if (m.Success) { richTextBox2.Text += "每一列:" + m.Groups[1].Value + "\n"; richTextBox2.Text += "每二列:" + m.Groups[2].Value + "\n"; richTextBox2.Text += "每三列:" + m.Groups[3].Value + "\n"; richTextBox2.Text += "每四列:" + m.Groups[4].Value + "\n----------------------\n"; }}/*-----输出-----源字符串:AA3-D3-J55-L4.jpg,匹配结果:每一列:AA3每二列:D3每三列:J55每四列:L4----------------------源字符串:S34.jpg,匹配结果:每一列:S34每二列:每三列:每四列:----------------------源字符串:K4-J56-K4.jpg,匹配结果:每一列:K4每二列:J56每三列:K4每四列:----------------------源字符串:S22-102-K3-H4,匹配结果:每一列:S22每二列:102每三列:K3每四列:H4----------------------*/ 你的问题和这个基本类似,改改就可以了参考 http://blog.csdn.net/chinajiyong/article/details/7581260 发布网站的问题 socket 获取ZIP文件解压问题???求关注 C#如何向别的程序里发送模拟按键或鼠标操作? 在。net中,怎么把数据库中的数据显示在input里! 我给产品研发部的内部邮件,关于用户体验和性能,希望大家给点意见 windows2008 为什么没有3D切换效果? 求一正则表达式 SOCKET一个查询请求,分多次返回 System.Data.ConstraintException: 列“XXX”被约束为是唯一的。值“XXX”已存在。 对RowState的困惑! 正则表达式求解释 C#连接MYSQL问题,帮忙看一下。
string s = "AAA-BB-234-KK";
string[] ss = s.Split('-');
foreach(string ss in s.Split('-'))
{
MessageBox.Show(ss);
}
foreach(string ss in s.Split('-'))
{
MessageBox.Show(ss);
}
取第二个-后的值
MessageBox.Show(s.Split('-')[2]);
比如:
AAA-BB-234-KK
BB5
K4-J55-U8
L33-J5我要求取得的结果是:
第1列 第2列 第3列 第4列
AAA BBB 234 KK
BB5
K4 J55 U8
L33 J5这样的。
那直接Replace那个-为空格不就完了s.Replace('-',' ');
Str的值如下:
AA3-D3-J55-L4.jpg
S34.jpg
K4-J56-K4.jpg
S22-102-K3-H4我要求向一个表中的
S1,S2,S3,S4 写入值
则我的结果应是:
AA3 D3 J55 L4
S34 空字符 空字符 空字符
K4 J56 K4 空字符
S22 102 K3 H4
string s = "AAA-BB-234-KK";
string[] temp = s.Split('-');
int maxLengh = temp.Count;
然后按照temp[0], temp[1], temp[2]....temp[maxLenght-1]这样取数据
这是和5楼相同的意思,只不过当你不知道数组长度时,帮你找出数组长度。
拼sql而已。
string[] test = new string[] { "AA3-D3-J55-L4.jpg", "S34.jpg", "K4-J56-K4.jpg", "S22-102-K3-H4" };
Regex reg = new Regex(@"([^-.]*)-?([^-.]*)?-?([^-.]*)?-?([^-.]*)?");
foreach (string s in test)
{
Match m = reg.Match(s);
richTextBox2.Text += "源字符串:" + s + ",匹配结果:\n";
if (m.Success)
{
richTextBox2.Text += "每一列:" + m.Groups[1].Value + "\n";
richTextBox2.Text += "每二列:" + m.Groups[2].Value + "\n";
richTextBox2.Text += "每三列:" + m.Groups[3].Value + "\n";
richTextBox2.Text += "每四列:" + m.Groups[4].Value + "\n----------------------\n";
}
}
/*-----输出-----
源字符串:AA3-D3-J55-L4.jpg,匹配结果:
每一列:AA3
每二列:D3
每三列:J55
每四列:L4
----------------------
源字符串:S34.jpg,匹配结果:
每一列:S34
每二列:
每三列:
每四列:
----------------------
源字符串:K4-J56-K4.jpg,匹配结果:
每一列:K4
每二列:J56
每三列:K4
每四列:
----------------------
源字符串:S22-102-K3-H4,匹配结果:
每一列:S22
每二列:102
每三列:K3
每四列:H4
----------------------
*/
参考 http://blog.csdn.net/chinajiyong/article/details/7581260