现在有个字符串,格式为
数字,数字,数字,...|数字,数字,数字,...|
...代表长度不固定,

1,5,6|3,6,8|
2|5|
请问当长度为1时和N时怎么统一转化为成2个字符串数组?

解决方案 »

  1.   

        public String[] Get(String strList)
        {
            strList += ",";
            return strList.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
        }//--------------------上面是转成字符串数组的函数体
    //下面是你的要求,全部可以实现
    String str = "2|5|";        Regex objRegex = new Regex(@"(?<Name>(\d+)(,\d+)*(?=\|))", RegexOptions.IgnoreCase);        MatchCollection objCollection = objRegex.Matches(str);        String[] objA = Get(objCollection[0].Groups["Name"].Value);
            String[] objB = Get(objCollection[1].Groups["Name"].Value);        foreach (String item in objA)
            {
                Response.Write(item);
            }
            Response.Write("<br/>");
            foreach (String item in objB)
            {
                Response.Write(item);
            }
            Response.Write("<br/>");//
    //2
    //5
      

  2.   

    就是把
    1,5,6|3,6,8|
    转换成
    string[] str1=new string{"1","5","6"};
    string[] str2=new string{"3","6","8"};把
    2|5| 
    转换成
    string[] str1=new string{"2"};
    string[] str2=new string{"5"};
      

  3.   

    用正则或String。Split函数应该不难写