1 /// <summary> 2 /// 获得字符串中开始和结束字符串中间得值 3 /// </summary> 4 /// <param name="str">字符串</param> 5 /// <param name="s">开始</param> 6 /// <param name="e">结束</param> 7 /// <returns></returns> 8 public static string GetMidValue(string str, string s, string e) 9 { 10 Regex rg = new Regex("(?<=(" + s + "))[.\s\S]*?(?=(" + e + "))", RegexOptions.Multiline | RegexOptions.Singleline); 11 return s.Trim('\') + rg.Match(str).Value + e.Trim('\'); 12 }
1 List<string> listdetail=new List<string>(); 2 string strhtml = "testaaa{aaa}testbbb{bbb}testccc{ccc}"; 3 for (int i = 0; i < 30; i++) 4 { 5 string find = GetMidValue(strhtml, "{", "}"); 6 if (find != "{}") 7 { 8 listdetail.Add(find); 9 if (i == 0) 10 { 11 strhtml = strhtml.Replace(find, "<start>"); 12 } 13 else 14 { 15 strhtml = strhtml.Replace(find, "<end>"); 16 } 17 } 18 else 19 { 20 break; 21 } 22 } 23 string end = strhtml;