c# '{' '}' 括号匹配

最近写代码  遇到了  {}进行匹配的问题  看了网上的一些  觉得有些部分不太适合我  就自己改了些 

不仅仅对“{”,“}” 的数量进行了匹配对比  ,还对 两个括号的写入顺序进行了判断。

/// <summary>
        /// 判断符号是否匹配
        /// </summary>
        /// <param name="value"></param>
        /// <returns></returns>
        public bool syMatch(string content)
        {
            //符号是否正确
            bool isCorrect = true;
            //定义一个l,m变量 对"{", "}" 的写入顺序进行对比
            int l = 0;
            int m = 0;
            if (content == null)
            {
                isCorrect = true;
            }
            else
            {
                Stack<char> stack = new Stack<char>();
                for (int i = 0; i < content.Length; i++)
                {
                    if (content[i].Equals('{'))
                    {
                        stack.Push(content[i]);
                        l++;
                    }
                    if (content[i].Equals('}'))
                    {
                        if (stack.Count != 0 && stack.Pop().Equals('{'))
                        {
                            
                            continue;
                        }
                        else
                        {
                            m++;
                            isCorrect = false;
                        }
                    }
                }
                if (stack.Count == 0 && l!=0  && m==0)
                {
                    isCorrect = true;
                }

                else if (stack.Count != 0)
                {
                    isCorrect = false;
                }
            }
            return isCorrect;
        }

    原文作者:括号匹配问题
    原文地址: https://blog.csdn.net/ssstl/article/details/78081658
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞