有一个字符串56 R2 R3 R5 Q L1 L3| R12 R13R14 Q L13 L15
现在想把它分割成56,R2,R3,R5,Q,L1,L3,|,R12,R13,R14,Q,L13,L15,该怎么分?字符串遇到R1R2,要能自动分割成R1,R2,

解决方案 »

  1.   

    using System;
    using System.Text.RegularExpressions;
    using System.Collections.Generic;class Test
    {
      static void Main()
      {
        string s = "56 R2 R3 R5 Q L1 L3 | R12 R13R14 Q L13 L15"; 
        MatchCollection ms = Regex.Matches(s.Replace(" ", ""), @"\D?\d*");
        List<string> t = new List<string>();
        foreach (Match m in ms)
        {
          t.Add(m.Value);
        }
        string u = string.Join(",", t.ToArray()).Trim(',');
        Console.WriteLine(u);
      }
    }
    /* 程序输出:
    56,R2,R3,R5,Q,L1,L3,|,R12,R13,R14,Q,L13,L15
    */
      

  2.   

    using System;
    using System.Text.RegularExpressions;class Test
    {
      static void Main()
      {
        string s = "56 R2 R3 R5 Q L1 L3 | R12 R13R14 Q L13 L15"; 
        string[] t = Regex.Split(s.Replace(" ", ""), @"(?=\D)");
        string u = string.Join(",", t);
        Console.WriteLine(u);
      }
    }
    /* 程序输出:
    56,R2,R3,R5,Q,L1,L3,|,R12,R13,R14,Q,L13,L15
    */
      

  3.   

    using System;
    using System.Text.RegularExpressions;class Test
    {
      static void Main()
      {
        string s = "56 R2 R3 R5 Q L1 L3 | R12 R13R14 Q L13 L15"; 
        string u = Regex.Replace(s.Replace(" ", ""), @"(?=\D)", ",");
        Console.WriteLine(u);
      }
    }
    /* 程序输出:
    56,R2,R3,R5,Q,L1,L3,|,R12,R13,R14,Q,L13,L15
    */
      

  4.   


    顶wuyi8808  牛o(∩_∩)o...