日期:2014-05-17  浏览次数:20682 次

C#操作字符串
“高护32班 班主任:吴会长 (2007-2008学年第一学期)” 这个字符串我怎么样才能用C#得到“高护32班” “2007-2008” “一” 这三个字符串呢?

------解决方案--------------------
问问wuyazhe正则能不能写……
------解决方案--------------------
            //提供的字符串特征:
            //班级位于行首,并后跟空白字符
            System.Text.RegularExpressions.Regex regClass = new System.Text.RegularExpressions.Regex(@"^\S+",
                 System.Text.RegularExpressions.RegexOptions.Multiline);
            //在校周期以“-”连接两个数字
            System.Text.RegularExpressions.Regex regPeriod = new System.Text.RegularExpressions.Regex(@"\d+\-\d+",
                 System.Text.RegularExpressions.RegexOptions.Multiline);

            string sToMatch = "高护32班 班主任:吴会长 (2007-2008学年第一学期)";
            System.Text.RegularExpressions.Match match = regClass.Match(sToMatch);
            if (match != null)
                Console.WriteLine("班组:" + match.Value);
            match = regPeriod.Match(sToMatch);
            if (match != null)
                Console.WriteLine("在校周期:" + match.Value);

输出:
班组:高护32班
在校周期:2007-2008

------解决方案--------------------
            //提供的字符串特征:
            //班级位于行首,并后跟空白字符