<ends>\n      
    <end xPos=\"0\" yPos=\"0\">\n        
        <properties>\n          
            <t1>aaaaaaaa<\/t1>\n          
            <t2>bbbbbbbb<\/t2>\n          
            <t3>cccccccc<\/t3>\n                  
        <\/properties>\n      
    <\/end>\n   
    <end xPos=\"0\" yPos=\"0\">\n        
        <properties>\n          
            <t1>dddddd<\/t1>\n          
            <t2>eeeeee<\/t2>\n          
            <t3>ffffff<\/t3>\n                  
        <\/properties>\n      
    <\/end>\n   
    <end xPos=\"0\" yPos=\"0\">\n        
        <properties>\n          
            <t1>gggggg<\/t1>\n          
            <t2>hhhhhh<\/t2>\n          
            <t3>iiiiii<\/t3>\n                  
        <\/properties>\n      
    <\/end>\n
<\/ends>\n
这是一个字符串中的内容(dim str as string),我想将这里面的内容放在datalist或者dataset中,最终在网页中显示这种效果
t1           t2            t3aaaaaaaa    bbbbbbbb     ccccccccdddddddd    eeeeeeee     ffffffffgggggggg    hhhhhhhh     iiiiiiii
想呈现这种效果,必须用截取字符串的方法,因为上面<ends></ends>是在一个string类型的字符串中哪位高人能指点一下?问题主要在于如何在一个字符串内循环查找、截取的问题,请指教 谢谢     

解决方案 »

  1.   

      string tempStr = File.ReadAllText(@"C:\Users\M\Desktop\Test.txt", Encoding.GetEncoding("GB2312"));
                string pattern = @"(?i)<properties>[\s\S]*?<t1>([^<\s]+)<\\/t1>[\s\S]*?<t2>([^<\s]+)<\\/t2>[\s\S]*?<t3>([^<\s]+)<\\/t3>[\s\S]*?";            var result = Regex.Matches(tempStr, pattern).Cast<Match>().Select(a => new {
                    t1=a.Groups[1].Value,
                    t2 = a.Groups[2].Value,
                    t3 = a.Groups[3].Value
                });
                /*
                 * + [0] { t1 = "aaaaaaaa", t2 = "bbbbbbbb", t3 = "cccccccc" } <Anonymous Type>
                    + [1] { t1 = "dddddd", t2 = "eeeeee", t3 = "ffffff" } <Anonymous Type>
                    + [2] { t1 = "gggggg", t2 = "hhhhhh", t3 = "iiiiii" } <Anonymous Type>             */
      

  2.   

    这不就是标准的xml嘛?如果你看不出这一点还自己写代码“解析”,我只能说很遗憾。