正则表达替换问题

pcmlose 2013-05-02 05:44:58
@font-face {
font-family: Titillium Maps;
src:url(../fonts/TitilliumMaps29L002.eot);
}
#all {
BORDER-RIGHT: #ddd 0px solid; BORDER-TOP: #ddd 0px solid; BORDER-LEFT: #ddd 0px solid; COLOR: #333; BORDER-BOTTOM: #ddd 0px solid
}

.zz_tit {
PADDING-LEFT: 10px; FONT-WEIGHT: bold; FONT-SIZE: 12px; BACKGROUND: url(/images/something/zz_fram_tit.jpg) no-repeat 50% bottom; WIDTH: 678px; COLOR: #5f5a4e; PADDING-TOP: 50px; FONT-FAMILY: ????; HEIGHT: 31px
}
.zz_list UL {
PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px auto; WIDTH: 720px; PADDING-TOP: 0px; LIST-STYLE-TYPE: none
}
.zz_list UL LI {
PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 12px; FLOAT: left; PADDING-BOTTOM: 0px; WIDTH: 200px; COLOR: #7b6f64; LINE-HEIGHT: 22px; PADDING-TOP: 0px; FONT-FAMILY: ????; HEIGHT: 22px
}


我要的效果是,找出url(****)的,只要替换为只有文件名字的,
上面结果应该要:
找到url(../fonts/TitilliumMaps29L002.eot) 替换为 url(TitilliumMaps29L002.eot)
找到url(/images/else/zz_fram_tit.jpg) 替换为 url(zz_fram_tit.jpg)


我在myeclipse里的find/replace里操作的
表达式: url\(.*(\w+)\.(.*)\) replace : url($1.$2)
结果是:
url(2.eot)
url(t.jpg)

不解啊,\w不是指 任意一个字母或数字或下划线,也就是 A~Z,a~z,0~9,_ 中任意一个吗
那\w+为什么只匹配一个字母而已?
...全文
68 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
zxhcloth 2013-05-02
  • 打赏
  • 举报
回复
将 表达式: url\(.*(\w+)\.(.*)\) replace : url($1.$2) 改成 表达式: url\(.*\/+(\w+\..+)\) replace : url($1)
pcmlose 2013-05-02
  • 打赏
  • 举报
回复
这个给忘了, Thanks, 下班,结帖
shine333 2013-05-02
  • 打赏
  • 举报
回复
url\(.*/(\w+)\.(\w+)\) 因为后面的(.*)是贪婪匹配,而.代表任何东西,包括点号,斜杠等等等等

62,616

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧