求两个正则表达式详细写法,谢谢各位,一定给分

58boy 2014-03-12 10:05:05
1.

.............<Compile Include="C:\Program Files\Adobe\abc\program.cs"/>............. 或
..................<Compile Include="Project\name.cs">......

提取出Include后边引号里的文件部分(红色),前边的<Compile Include="不变,后边的/>有可能是>或/>


2. .................GetParam("abc","D_ABC_PRAM_0") ; ................................
提取出GetParam方法中的第二个参数中引号内的部分,即红色部分


最好能写出所有的过程,不只是一个正则表达式,谢谢啊
高分答谢!!!
...全文
163 点赞 收藏 8
写回复
8 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
liuyilin777 2014-03-13
回复
liuyilin777 2014-03-13
回复
楼上的大神已经回答了
回复
string str1 = @"<Compile Include=""C:\Program Files\Adobe\abc\program.cs""/>";
            string str2 = @"GetParam(""abc"",""D_ABC_PRAM_0"") ;";

            string v1 = Regex.Match(str1, @"(?i)(?<=<Compile[^>]*?Include=['""])[^'""]*?(?=['""])").Value;//C:\\Program Files\\Adobe\\abc\\program.cs
            string v2 = Regex.Match(str2, @"(?i)(?<=GetParam\([^,]*?,['""])[^'""]*?(?=['""])").Value;//D_ABC_PRAM_0
回复
兔子党-督察 2014-03-12

2. var reg=new Regex(@"(?<=GetParam\([^,]+,(""))[^""]+(?=\1\))");
回复
兔子党-督察 2014-03-12
2. var reg=new Regex(@"(?<=GetParam\([^,]+,(""))[^"]+(?=\1\))");
回复
兔子党-督察 2014-03-12
1. var reg=new Regex(@"(?<=Compile Include=(""))[^""]+(?=\1)");

2. var reg=new Regex(@"(?<=GetParam\(("")[^""]\1,\1)[^""]+(?=\1)");
回复
58boy 2014-03-12
有知道的么?
回复
相关推荐
发帖
C#
创建于2007-09-28

10.6w+

社区成员

.NET技术 C#
申请成为版主
帖子事件
创建了帖子
2014-03-12 10:05
社区公告

让您成为最强悍的C#开发者