字符串str中有
**** ab: **** cd: **** ef: ****
的文本也就是说
str="**** ab: **** cd: **** ef: ****";其中 ab: cd: ef: 为固定内容,而 **** 代表不定长字符里面数字、文字、字母、符号都可能有,我怎么用Regex取得这四个****文本内容赋给四个字符串变量如str1,str2,str3,str4。请说的详细些谢谢

解决方案 »

  1.   

                s=s.Replace("ab:", ",");
                s=s.Replace("cd:", ",");
                s=s.Replace("ef:", ",");
                string[] ret = s.Split(',');
      

  2.   


                string str = "**** ab: **** cd: **** ef: ****";
                string[] result = str.Split(new string[] { "ab:", "cd:", "ef:" }, StringSplitOptions.RemoveEmptyEntries);
      

  3.   


    (?<str1>.*)ab:(?<str2>.*)cd:(?<str3>.*)ef:(?<str4>.*)
    正则取str1,str2...就可以了
      

  4.   

    (.*)ab: (.*)cd: (.*)ef: (.*)
      

  5.   

    (\w*)ab:(\w*)cd:(\w*)ef:(\w*)看这样行不。
      

  6.   

    我初学者,请把结果赋给str1,str2,str3,str4好么,我不知道这个怎么用,哪个是药取出的4个字符串?请详细解释下好么?另外用regex怎么解决这个问题?
      

  7.   

    Match c=Regex.Match("fjiefjiaeiab:efjiefjiecd:iefjifnwfnef:fjeifjeife",@"(\w*)ab:(\w*)cd:(\w*)ef:(\w*)");
                Console.WriteLine(c.Groups[1].ToString());
                Console.WriteLine(c.Groups[2].ToString());
                Console.WriteLine(c.Groups[3].ToString());
                Console.ReadLine();
      

  8.   

                string str = "**** ab: **** cd: **** ef: ****";
                string[] result = str.Split(new string[] { "ab:", "cd:", "ef:" }, StringSplitOptions.RemoveEmptyEntries);
                str1 = result[0];
                str2 = result[1];
                str3 = result[2];
                str4 = rseult[3];
    正则的解法,楼上已经有人给出答案了