如果字符串是
姓名张三性别男年龄15姓名李四性别女年龄15以上是字符串!
如何把字符串分解成张三 男 15
李四 女 15两个函数!Main以及自定义一个函数!由Main函数传递字符给自定义函数!然后由自定义函数分析字符串,然后以数组形式传送给Main,然后通过在Main中foreach循环输出字符串!

解决方案 »

  1.   

    如何把字符串分解成 张三   男   15 
    李四   女   15 然后以数组形式传送给Main
    ------------------
    分解结果是两个字符串还是六个字符串?返回类型是一维数组还是二维数组?这么简单一个问题,还把步骤写得那么详细,是作业吧,如果是作业还是自己做的好
      

  2.   


    string mysplit(string s)
    {
    return s.Replace("姓名","\n").Replace("年龄"," ").Replace("性别"," ");
    }
      

  3.   

    多次使用split分成多个数组
    split("姓名")
    split("性别")
    split("年龄")
      

  4.   

    首先查找“姓名”字符串,得到第一个和第二个的Index,根据这两个Index得到一个子串,这是一个人的信息
    然后依次第二个,第三个直到结束。
    在拆分个人信息,就比较简单了,分别以姓名、性别、年龄为标志,拆成3个子串即可。 
      

  5.   

    return s.Replace("姓名","\n").Replace("年龄"," ").Replace("性别"," ");
      

  6.   

       static ArrayList Test()
            {
                ArrayList arralist = new ArrayList();
                string test = "姓名张三性别男年龄15姓名李四性别女年龄15";
                string test2 = Regex.Replace(test, "姓名", ";");
                test2 = Regex.Replace(test2, "性别|年龄", " ");
                test2 = test2.Substring(1);
                string[] test3 = test2.Split(';');
                for (int i = 0; i < test3.Length; i++)
                {
                    arralist.Add(test3[i]);
                }
                return arralist;
            }
            static void Main(string[] args)
            {
                ArrayList arralist = new ArrayList();
                arralist = Test();
                for (int i = 0; i < arralist.Count; i++)
                {
                    Console.WriteLine(arralist[i]);
                }            Console.ReadLine();
            }
      

  7.   

    写成这个样子了
    都不知道怎么返回了!
     public static ArrayList Transact(string GetString, int Status)
            {
                ArrayList arralist = new ArrayList();
                if (Status == 0)
                {
                    Regex re = new Regex(@"问题标题008(?<问题标题>[\s\S]*?)问题内容008(?<问题内容>[\s\S]*?)问题补充008(?<问题补充>[\s\S]*?)用户姓名008(?<问题姓名>[\s\S]*?)性别008(?<性别>[\s\S]*?)电子邮件008(?<问题电子邮件>[\s\S]*?)生日008(?<生日>[\s\S]*?)血型008(?<血型>[\s\S]*?)婚姻008(?<婚姻>[\s\S]*?)出生地008(?<出生地>[\s\S]*?)目前居住地008(?<目前居住地>[\s\S]*?)简介008(?<简介>[\s\S]*?)完毕008");
                    MatchCollection mc = re.Matches(GetString);
                    
                    foreach (Match m in mc)
                    {
                     
                    }
                }
                return arralist;
            
            }       foreach里面该怎么写啊??
      

  8.   

        class Program
        {
            static void Main(string[] args)
            {
                string[] aaa = xxxxx("姓名张三性别男年龄15姓名李四性别女年龄15");
                foreach (string a in aaa)
                {
                    Console.WriteLine("{0}", a);
                }            Console.ReadLine();        }        static string[] xxxxx(string str)
            {
                string[] bbb = str.Split(new string[] { "姓名" }, StringSplitOptions.None);
                for (int i = 0; i < bbb.Length; i++)
                {
                    bbb[i] = bbb[i].Replace("年龄", " ").Replace("性别", " ");
                }            return bbb;
            }
        }
      

  9.   

    我的意思是如何把正则表达式匹配的结果组返回到数组中,然后返回数组到Main函数中作循环输出!
      

  10.   

    "问题标题008简单的表单验证问题问题内容008我的表单验证不通过时是用Response.Write(\"&lt;script&gt;alert(''用户名不能为空'')&lt;/script&gt;\");来提示用户的。可是当对话框弹出,点击“确定”后,输入的密码却被清空了。怎么能在点击确定后不清空密码?问题补充008密码输入框&lt;asp:textbox id=\"secondpwd1\" runat=\"server\" TextMode=\"Password\"&gt;&lt;/asp:textbox&gt; 我要的是点击确定后,密码不清空啊你告诉我怎么做啊?xing_8888_good用户姓名008stef55555性别008男电子邮件[email protected]生日008未知血型008未知婚姻008单身出生地008未知-未知目前居住地008未知-未知简介008师太,你就依了老衲吧!完毕008"
      

  11.   

    问题标题008(?<问题标题>[\s\S]*?)问题内容008(?<问题内容>[\s\S]*?)问题补充008(?<问题补充>[\s\S]*?)用户姓名008(?<问题姓名>[\s\S]*?)性别008(?<性别>[\s\S]*?)电子邮件008(?<问题电子邮件>[\s\S]*?)生日008(?<生日>[\s\S]*?)血型008(?<血型>[\s\S]*?)婚姻008(?<婚姻>[\s\S]*?)出生地008(?<出生地>[\s\S]*?)目前居住地008(?<目前居住地>[\s\S]*?)简介008(?<简介>[\s\S]*?)完毕008
      

  12.   

    用正则就可以了, LZ可以结贴了:using System.Text.RegularExpressions;
    string str="姓名张三性别男年龄15姓名李四性别女年龄15";
    string RegexString = @".*?姓名(?<Name>[^性别].*?)性别(?<Sex>[^年龄].*?)年龄(?<Age>[^姓名].*?).*?"; 
    string[] Name = GetRegValue(str, RegexString, "Name", false); 
    string[] Sex = GetRegValue(str, RegexString, "Sex", false);
    string[] Age = GetRegValue(str, RegexString, "Age", false);
    Response.Write(Name[0].ToString()); /// <summary>
    /// 正则表达式取值
    /// </summary>
    /// <param name="HtmlCode">源码</param>
    /// <param name="RegexString">正则表达式</param>
    /// <param name="GroupKey">正则表达式分组关键字</param>
    /// <param name="RightToLeft">是否从右到左</param>
    /// <returns></returns>
    public string[] GetRegValue(string HtmlCode , string RegexString,string GroupKey,bool RightToLeft)
    {
    MatchCollection m;
    Regex r;
    if (RightToLeft == true)
    {
    r = new Regex(RegexString, RegexOptions.IgnoreCase | RegexOptions.Singleline | RegexOptions.RightToLeft);
    }
    else
    {
    r = new Regex(RegexString, RegexOptions.IgnoreCase | RegexOptions.Singleline);
    }
    m= r.Matches(HtmlCode);
    string[] MatchValue = new string[m.Count];
    for (int i = 0; i < m.Count; i++)
    {
    MatchValue[i] = m[i].Groups[GroupKey].Value;
    }
    return MatchValue;
    }
      

  13.   

    qgmzhfj 
    你这样得有缺陷啊,一旦出现姓名年龄年龄,就有问题了如果是这样子的话,格式就会乱,程序根本没办法区分谁是谁了?