簡體   English   中英

比較字符串的一部分。 C#

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM