菜鸟---==求大神~~~ 解决!!! 如textbox1内容为[a1=zza][b1=c][c1=ddddw]eeee[/c1][/b1][/a1]要获取的内容是: [a1=zza]的内容【zza】,并输出到textbox2中;和[c1=ddddw]后面的内容【eee】输出到textbox3中;求大神 解决~~~ 【那些都是变量】 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 string s = "[a1=zza][b1=c][c1=ddddw]eeee[/c1][/b1][/a1]";var m = System.Text.RegularExpressions.Regex.Match(s, @"\[a1\=([^\]]+).+?\[c1\=[^\]]+\]([^\[]+)\[\/c1\]");string s1 = m.Groups[1].Value; //zzastring s2 = m.Groups[2].Value; //eeee textbox1的内容是像这样的多行的[a1=zza][b1=c][c1=ddddw]eeee[/c1][/b1][/a1] 本帖最后由 caozhy 于 2013-10-12 22:46:40 编辑 textBox2.Text = string.Join("\r\n", textBox1.Lines.Select(s => {var m = System.Text.RegularExpressions.Regex.Match(s, @"\[a1\=([^\]]+).+?\[c1\=[^\]]+\]([^\[]+)\[\/c1\]");return m.Groups[1].Value; //zza}).ToArray());另外一个类似。像多行下面内容的 怎么整 我替换上面的代码 没整出来 呜呜呜~~[wqe=http://bdfbfd][cdfd=asad][swzes=14et][gfrg]gsdgdsfg[/gfrg][/swzes][/cdfd][/wqe] string str = @"[a1=zza][b1=c][c1=ddddw]eeee[/c1][/b1][/a1]"; Regex r1 = new Regex(@"\](?<value>[^\[|\]]+)\["); string strValue = r1.Match(str).Groups["value"].Value; Console.WriteLine("Value:{0}", string.IsNullOrEmpty(strValue) ? "null" : strValue); str = r1.Replace(str, "]["); Regex r2 = new Regex(@"\[(?<tag>[^\[|\]]+)=(?<attr>[^\[|\]]+)\][^\[|\]]{0,}\[/[^\[|\]]+\]"); List<string> lstTag = new List<string>(); List<string> lstAttr = new List<string>(); Match m = r2.Match(str); while (!string.IsNullOrEmpty(m.Value)) { lstTag.Add(m.Groups["tag"].Value); lstAttr.Add(m.Groups["attr"].Value); str = r2.Replace(str, ""); m = r2.Match(str); } for (int i = 0; i < lstTag.Count; i++) { Console.WriteLine("Tag:{0}\tAttr:{1}", string.IsNullOrEmpty(lstTag[i]) ? "null" : lstTag[i], string.IsNullOrEmpty(lstAttr[i]) ? "null" : lstAttr[i]); } Console.ReadKey(); 如textbox1像下面多行的内容[wqe=http://www.bdfbfd.com][cdfd=asad][swzes=14et][gfrg]opskeid[/gfrg][/swzes][/cdfd][/wqe]要获取的内容是:[wqe=http://bdfbfd]的内容【http://www.bdfbfd.com】,并输出到textbox2中;和[gfrg]后面的内容【opskeid】输出到textbox3中; 初学C#的很多问题.望有心人士可以解答.谢谢!!!! dataset读取xml文件时记录为0个,那位大哥帮忙解决一下阿,多谢啦 关于Datagrid删除的问题 一个关于excel的问题 在datagridview中,在没有数据的情况下都显示所有的行格子 高分急救:Crystal Report.net 序列号的问题!! 如何把C#编译成本地代码,以脱离Framework也可以运行? 如何用C#写一个简单的监视系统的程序,只要记录打开的程序和时间。高手请进。 关于ASP.NET中关于C#代理的若干问题请教! 请问正版vs.net b2手册上的实验代码在哪可以下 c# toolStripButton.DoDragDrop拖动问题 ToolStripMenuItem和ToolStripItem的区别
var m = System.Text.RegularExpressions.Regex.Match(s, @"\[a1\=([^\]]+).+?\[c1\=[^\]]+\]([^\[]+)\[\/c1\]");
string s1 = m.Groups[1].Value; //zza
string s2 = m.Groups[2].Value; //eeee
{
var m = System.Text.RegularExpressions.Regex.Match(s, @"\[a1\=([^\]]+).+?\[c1\=[^\]]+\]([^\[]+)\[\/c1\]");
return m.Groups[1].Value; //zza
}).ToArray());另外一个类似。像多行下面内容的 怎么整 我替换上面的代码 没整出来 呜呜呜~~
[wqe=http://bdfbfd][cdfd=asad][swzes=14et][gfrg]gsdgdsfg[/gfrg][/swzes][/cdfd][/wqe]
string strValue = r1.Match(str).Groups["value"].Value; Console.WriteLine("Value:{0}", string.IsNullOrEmpty(strValue) ? "null" : strValue);
str = r1.Replace(str, "]["); Regex r2 = new Regex(@"\[(?<tag>[^\[|\]]+)=(?<attr>[^\[|\]]+)\][^\[|\]]{0,}\[/[^\[|\]]+\]"); List<string> lstTag = new List<string>();
List<string> lstAttr = new List<string>(); Match m = r2.Match(str);
while (!string.IsNullOrEmpty(m.Value))
{
lstTag.Add(m.Groups["tag"].Value);
lstAttr.Add(m.Groups["attr"].Value); str = r2.Replace(str, "");
m = r2.Match(str);
} for (int i = 0; i < lstTag.Count; i++)
{
Console.WriteLine("Tag:{0}\tAttr:{1}", string.IsNullOrEmpty(lstTag[i]) ? "null" : lstTag[i],
string.IsNullOrEmpty(lstAttr[i]) ? "null" : lstAttr[i]);
} Console.ReadKey();