这可能太容易了,但我不知道从哪里开始。
我有像“'02HEX'aspoodsasas'CR''LF'”这样的叮咬
现在我想在char(02)和char(12)之间提取stings;
到现在为止我做了以下
string s = string.Format("{0}{1}{2}", (char)02, "12345678", (char)12);
int chindx = s.IndexOf((char)02)+1;
s = s.Substring(chindx, 8)
如果我知道起始字符的位置和结束字符在字符串中的位置,我的问题是如何确定子字符串的长度
答案 0 :(得分:8)
只需减去:
string middle = text.Substring(start, end - start);
(假设你不想要位置end
的角色 - 如果你这样做,只需添加一个。)
例如:
string text = "hi there";
int start = 3; // 't'
int end = 6; // 'r'
string middle = text.Substring(start, end - start); // "the"
答案 1 :(得分:1)
一个简单的减法就可以了。结束位置 - 开始位置(减去第一个标记的长度)