[英]Comparing a part of a string. C#
我想比較並檢查一個字符串是否是另一個字符串的一部分。 例如:String1 =“ 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;
}
輸入=字符串1,待檢查=字符串2。我是C#中的新增內容,因此某些術語可能會造成混淆。
嘗試使用String.Contains()
在這里查看:
http://msdn.microsoft.com/en-us/library/dy85x1sa%28v=vs.110%29.aspx
祝好運。
采用
If(mainString.Contains(searchedString)
{
//do stuff
}
在我看來,您似乎正在使用它來比較DNA序列:)。
也許string.IndexOf(string value)或其中之一的重載對您來說更好,因為它可以幫助您搜索同一字符串的進一步出現(例如“它包含該字符串多少次”之類的東西): http:// msdn .microsoft.com / EN-US /庫/ k8b1470s(v = vs.110)的.aspx
如果確實只是想看看字符串是否包含在內,那么我也會選擇其他人提供的版本。
對於核苷酸序列,您可能需要一些序列比對算法 ,當序列不相等時,該算法具有一定的耐受性。 例如Smith-Waterman算法 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.