日期:2014-05-17  浏览次数:20673 次

会正则表达式的进
麻烦各位给我写个正则表达式:


835589790----宁波龙腾印务
826845666----罗兰印务
8265760----i海天印务
985236962|远涛印务
983131667|尚品印务
981952134|远华印务
1145239696|合肥新航道英语学校
1762722484|聚才厨师学校
48774356|绿新职业学校
1184537431|学开锁学校--
1606791616|学开锁学校
1732479202|学开锁学校\
1903653975|学开锁学校
1602911107|学开锁学校,
1652194001|学开锁学校。
1563434391|学开锁学校/
85662816|聚才厨师学校一校
1137119865|挖掘机学校
1315034306|挖掘机学校
1178452068|挖掘机学校
506393158|中誉艺术学校


这些数据前面是QQ,后面是昵称,数据都在txt里面存着,我现在已经读入程序,


读入之后是这样的:


1145239696|合肥新航道英语学校\r\n1762722484|聚才厨师学校\r\n48774356|绿新职业学校\r\n1184537431|学开锁学校--\r\n1606791616|学开锁学校\r\n1732479202|学开锁学校\\\r\n1903653975|学开锁学校\r\n1602911107|学开锁学校,\r\n1652194001|学开锁学校。\r\n1563434391|学开锁学校/




\r\n 是换行。。。


我现在需要一个正则,能从我读入的数据中取出 QQ号 和对应的昵称。。

QQ号  和 昵称之间有的是用 | 隔开,有的用 ----隔开。。。


朋友给我写了一个,我在测试工具里可以用,到了 编译器里就不可以了。。。












实在搞不懂怎么回事。。



各位同仁麻烦给我写个,或者直接加我QQ:905607625


告诉我原因。。。
------解决方案--------------------
string tempStr = @"1145239696
------解决方案--------------------
合肥新航道英语学校\r\n1762722484
------解决方案--------------------
聚才厨师学校\r\n48774356
------解决方案--------------------
绿新职业学校\r\n1184537431
------解决方案--------------------
学开锁学校--\r\n1606791616
------解决方案--------------------
学开锁学校\r\n1732479202
------解决方案--------------------
学开锁学校\\\r\n1903653975
------解决方案--------------------
学开锁学校\r\n1602911107
------解决方案--------------------
学开锁学校,\r\n1652194001
------解决方案--------------------
学开锁学校。\r\n1563434391
------解决方案--------------------
学开锁学校/

";
                var list = Regex.Matches(tempStr, @"(?i)(\d+?)\W+?(\w+?)(?=\W)").Cast<Match>().Select(a => new { 
                QQ=a.Groups[1].Value,
                Name=a.Groups[2].Value
                });
                /*
            + [0] { QQ = "1145239696", Name = "合肥新航道英语学校" } <Anonymous Type>
                    + [1] { QQ = "1762722484", Name = "聚才厨师学校" } <Anonymous Type>
                    + [2] { QQ = "48774356", Name = "绿新职业学校" } <Anonymous Type>