日期:2014-05-18  浏览次数:20596 次

兄弟们,来吧。帮我解决一个正则表达式问题!
姓名:李小龙|证件类型:身份证|证件号码:110108199xxx096322|性别:女|出生日期:1990-7-9|职业类别:第一类|联系电话:XXXXXXXXXXX|电子邮件:|邮编:|地址:


上面有一段用户信息,我想从上面这段信息里面获取用户姓名,也就是“李小龙”.,,

怎么写?求正则表达式!!高手们,虾米们,来吧!

------解决方案--------------------
为什么用正则,Split('|')[0].Split(':')[1]不行?
------解决方案--------------------
C# code

 string sourcestr = @"姓名:李小龙|证件类型:身份证|证件号码:110108199xxx096322|性别:女|出生日期:1990-7-9|职业类别:第一类|联系电话:XXXXXXXXXXX|电子邮件:|邮编:|地址:";
            Regex regx = new Regex(@"[\u4e00-\u9fa5]+:([\u4e00-\u9fa5]+)(?=|)");
            List<string> urllist = new List<string>();
            MatchCollection mcurl = regx.Matches(sourcestr);
            foreach (Match sk in mcurl)
            {
                urllist.Add(sk.Groups[1].Value);//urllist第一个值李小龙
            }

------解决方案--------------------
C# code

            string source = @"姓名:李小龙|证件类型:身份证|证件号码";
            Regex reg = new Regex(@"姓名:(?<name>\w*W*).*证件类型");
            Match mm = reg.Match(source);
            MessageBox.Show(m.Groups["name"].Value);