C# 如何检查字符串在特定位置是否包含字符?

C# 如何检查字符串在特定位置是否包含字符?,c#,C#,我希望能够检查该位置所指向的字符串中的特定字符。例如,在Java中,如果b.charAtbPointer==预期我正在用c编写代码,您会这样做。我想知道我是否应该使用contains方法或indexOf方法,或者是否有一种不同的方法来实现这一点 public static bool func(string a, string b) { int aPointer = a.Length - 1; int bPointer = b.Len

我希望能够检查该位置所指向的字符串中的特定字符。例如,在Java中,如果b.charAtbPointer==预期我正在用c编写代码,您会这样做。我想知道我是否应该使用contains方法或indexOf方法,或者是否有一种不同的方法来实现这一点

public static bool func(string a, string b)
        {
            int aPointer = a.Length - 1;
            int bPointer = b.Length - 1;

            int aSkips = 0;
            int bSkips = 0;

            while(aPointer >= 0 || bPointer >=0)
            {
                while (aPointer >= 0)
                {
                    if (// check if a.CharAt(aPointer) =='#' )
                    {
                        aSkips += 1;
                        aPointer -= 1;
                    }
                    else if (aSkips > 0)
                    {
                        aPointer -= 1;
                        aSkips -= 1;
                    }
                    else
                    {
                        break;
                    }
                }

                while (bPointer >= 0)
                {
                    if ()
                    {
                        bSkips += 1;
                        bPointer -= 1;
                    }
                    else if (bSkips > 0)
                    {
                        bPointer -= 1;
                        bSkips -= 1;
                    }
                    else
                    {
                        break;
                    }
                }
使用索引器:

if (a[aPointer] == '#')
您可能需要检查字符串的长度,以避免出现以下错误:


如果s[索引]==。不过,您可能需要先确认索引if (aPointer < a.Length && a[aPointer] == '#')