首页 新闻 搜索 专区 学院

请问关于图片路径的正则表达式.

0
悬赏园豆:20 [已解决问题] 解决于 2008-11-10 00:54

我有一个文件,需要替换里面的路径,如下:

exp:

string from = @"(../)+(([_a-zA-Z0-9-]+/{1})*([a-zA-Z0-9]{1,}\.(jpg|gif|png)))";

string to = @"http://www.anysite.com/images/$2";

string file = @"<img src=image/a.jpg/>sd";

本来意思替换后为:

http://www.anysite.com/images/image/a.jpg

不过不知道为什么最后总是:

<img src=imahttp://www.sdo.com/images/a.jpg/>sd

多出的 ima 三个字母不知道是怎么匹配上去的,而且我也限定必须有至少1个(../),结果还是匹配上了,所以请教各位高手指点下..谢谢

问题补充: 更正下示例: exp: string from = @"(../)+(([_a-zA-Z0-9-]+/{1})*([a-zA-Z0-9]{1,}\.(jpg|gif|png)))"; string to = @"http://www.anysite.com/images/$2"; string file = @" <img src=image/a.jpg/>sdf"; 本来意思替换后为: http://www.anysite.com/images/image/a.jpg 不过不知道为什么最后总是: <img src=imahttp://www.anysite.com/images/a.jpg/>sdf 多出的 ima 三个字母不知道是怎么匹配上去的,而且我也限定必须有至少1个(../),结果还是匹配上了,所以请教各位高手指点下..谢谢
偶行势箭的主页 偶行势箭 | 初学一级 | 园豆:30
提问于:2008-11-09 16:29
< >
分享
最佳答案
0

string from = @"(\.\./)+(([a-zA-Z0-9]+/{1})*([a-zA-Z0-9]{1,}\.(jpg|gif|png)))";
string to = @"http://www.anysite.com/$2";
string file = @" <img src=../image/a.jpg>sdf";
Regex rg
= new Regex(from);
string ret = rg.Replace(file, to);

5yplan | 小虾三级 |园豆:1330 | 2008-11-09 18:47
其他回答(1)
0

想.这样的元字符,都需要转义的

yicone | 园豆:222 (菜鸟二级) | 2008-11-09 21:46
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册