baidu_28995151
baidu_28995151
2018-10-07 06:33
采纳率: 100%
浏览 2.4k

C#用正则表达式分割字符串

图片说明为什么会分割出来空串

string  studentInfo ="姓名|学号|技能分数\r\n张三|01|76\r\n李四|02|89\r\n王麻子|03|20\r\n熊大|04|90\r\n熊二|05|68\r\n光头强|06|88";
 string[] strings = Regex.Split(studentInfo.Trim(),"[(\r\n)]");
 //            string[] strings = Regex.Split(studentInfo.Trim(),"(\r\n)");
//            string[] strings = Regex.Split(studentInfo.Trim(),"\r\n");
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • caozhy
    已采纳

    把正则表达式里的方括号圆括号都去掉。你是按照\r\n分割,而不是\r或者\n分割,你那样分,当然出现空行了。

    点赞 评论
  • caozhy
     using System;
    using System.Text.RegularExpressions;
    
    public class Test
    {
        public static void Main()
        {
            // your code goes here
            string  studentInfo ="姓名|学号|技能分数\r\n张三|01|76\r\n李四|02|89\r\n王麻子|03|20\r\n熊大|04|90\r\n熊二|05|68\r\n光头强|06|88";
            string[] strings = Regex.Split(studentInfo.Trim(), @"\r\n|\|");
            foreach (string s in strings)
                Console.WriteLine(s);
        }
    }
    

    运行结果

    姓名
    学号
    技能分数
    张三
    01
    76
    李四
    02
    89
    王麻子
    03
    20
    熊大
    04
    90
    熊二
    05
    68
    光头强
    06
    88

    https://ideone.com/uTY3vi

    点赞 评论

相关推荐