string responser = contents.Substring(f + firstTag.Length, g - f - firstTag.Length);
string dateTag = "בתאריך";
string wroteResponser = ":כתב";
int i = responser.IndexOf(dateTag);
int p = responser.IndexOf(wroteResponser );
string test = responser.Substring(i + dateTag.Length, p + wroteResponser.Length - i - dateTag.Length);
在响应者中我有:כתב:רוטריתבתאריך:26.06.14שעה:22:58 我想从中删除这部分:כתב:רוטרית
所以最后我只会以此结尾:בתאריך:26.06.14שעה:22:58 我这样做的方式一直是-1,而且我认为测试也是错误的。
答案 0 :(得分:1)
为什么不使用String.Replace(" stringyouwantremoved","");这将返回原始字符串减去要删除的字符串。
答案 1 :(得分:1)
p = -1的原因是因为writeResponser应该是“כתב:”而不是“:כתב” 但是,你的整个前提是错误的。
您正在寻找删除部件。
string responser = "כתב: רוטרית בתאריך: 26.06.14 שעה: 22:58 ";
string dateTag = "בתאריך";
string wroteResponser = "כתב:";
int i = responser.IndexOf(dateTag);
int p = responser.IndexOf(wroteResponser);
string test = responser.Remove(p, i);
另一个解决方案是使用正则表达式
var match = Regex.Match(responser,"כתב: .+בתאריך:(.+) ",RegexOptions.Compiled);
var u = match.Groups[1].Value;
לילהלבןשמח;)
答案 2 :(得分:0)
Int start = 0;
Int end = [some number];
字符串测试=响应。删除(开始,结束);
除非我不理解这个问题,否则这样的事情应该有效。