在For循环中,我不理解string.Substring(i,j)
的以下行为
有代码
String line = "TTACCTTAAC";
int k = 3; //this is variable but for simplicity is 3
String _pattern = "";
for (int i = 0; i <= line.Length - k; i++) {
_pattern = line.Substring(i, i + k );
//do something...
}
我期望循环遍历字符串行(TACCTTAAC
) (from 0 to 10-3 = 7)
,例如:
TTA
ACC
CCT
CTT
TTA
TAA
AAC
不管我得到了什么
TTA
ACCT
etc...
我遗漏了什么?
发布于 2015-09-17 05:39:00
Substring
的第二个参数是length
,而不是end
,因此您应该通过k
而不是计算:
String line = "TTACCTTAAC";
int k = 3; //this is variable but for simplicity is 3
String _pattern = "";
for (int i = 0; i <= line.Length - k; i++) {
_pattern = line.Substring(i, k);
//do something...
}
发布于 2015-09-17 05:42:32
c#中的子字符串函数用作string.Substring(int,int长度)。
所以你应该用
_pattern = line.Substring(i, k);
https://stackoverflow.com/questions/32623207
复制相似问题