你读取指定字符在字符串的位置起始位置及结束位置,再用substring,
如:
string s = "1234abc123444555efcdeeee";
int i = s.IndexOf("abc")+1;
int j = s.IndexOf("ef");
string str = s.Substring(i, j - i+2);
int i = s.IndexOf("abc");
str结果为:abc123444555ef,
private
string
GetStr(
string
TxtStr,
string
FirstStr,
string
SecondStr)
{
if
(FirstStr.IndexOf(SecondStr, 0) != -1)
return
""
;
int
FirstSite = TxtStr.IndexOf(FirstStr, 0);
int
SecondSite = TxtStr.IndexOf(SecondStr, FirstSite + 1);
if
(FirstSite == -1 || SecondSite == -1)
return
""
;
return
TxtStr.Substring(FirstSite + FirstStr.Length, SecondSite - FirstSite - FirstStr.Length);
}

/// <summary> /// 获得字符串中开始和结束字符串中间得值 /// </summary> /// <param name="str">字符串</param> /// <param name="s">开始</param> /// <param name="e">结束</param> /// <returns></returns> public static string GetValue(string str, string s, string e) { Regex rg = new Regex("(?<=(" + s + "))[.\\s\\S]*?(?=(" + e + "))", RegexOptions.Multiline | RegexOptions.Singleline); return rg.Match(str).Value; }