在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
复制相似问题