【发布时间】:2014-11-28 15:22:47
【问题描述】:
我想比较并检查一个字符串是否是另一个字符串的一部分。例如: 字符串 1 = "ACGTAAG" String2 = "TAA"
我想检查 String1 是否包含 String2。我正在使用此代码,但它不起作用。
public bool ContainsSequence(string input, string toBeChecked)
{
for (int i = 0; i < input.Length; i++)
{
Char x = input[i];
String y = Convert.ToString(x);
for (int j = 0; j < toBeChecked.Length; j++)
{
Char a = toBeChecked[j];
String b = Convert.ToString(a);
if (b.Equals(y))
{
j = toBeChecked.Length;
return true;
}
}
}
return false;
}
input = string1 和 tobechecked = string 2。 我是 c# 的新手,所以有些术语可能会令人困惑。
【问题讨论】:
-
为什么不使用 .contains? input.contains(toBeChecked).
-
c# 在字符串对象上有一个方法:
contains -
至于为什么这段代码不起作用:如果找到一个匹配字符,您只返回true,您从不检查是否找到整个字符串
ToBeChecked(因为你在发现之前就回来了;D) -
是的,我会使用那个方法。谢谢:)
标签: c# arrays string for-loop compare