我正在使用表示层中的JSP和JSTL开发Web应用程序。 当我从设计师那里得到html时,我的jsp文件更新如下:
...
<link rel="stylesheet" type="text/css" href="<c:url value="/fo/inc-css/normalize.css"/>" />
<link rel="stylesheet" type="text/css" href="<c:url value="/fo/inc-css/font.css"/>" />
<link rel="stylesheet" type="text/css" href="inc-css/jquery.jscrollpane.css" />
<link rel="stylesheet" type="text/css" href="inc-css/csspie.css" />
...
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script src="inc-js/plugins.js" type="text/javascript"></script>
<script src="inc-js/plugins/jquery.fitvids.js" type="text/javascript"></script>
<script src="inc-js/plugins/jquery.bxslider.min.js" type="text/javascript"></script>
...
<h1><a href="/" title="Home Page">Home Page</a></h1>
...
<ul>
<li><a href="#" title="LOG OUT">Log out</a></li>
<li><a href="#" title="My Profile">My Profile</a></li>
<li><a href="#" title="Help">Help</a></li>
<li><a href="#" title="Contact Us">Contact Us</a></li>
</ul>
...
有许多href / url没有<c:url />
(我没有显示整个文件,因为它很长)。我想将所有href / url替换为<c:url />
标记,但#
,/
和完整网址。例如
href="inc-css/jquery.jscrollpane.css"
应该成为
href="<c:url value="/fo/inc-css/jquery.jscrollpane.css" />"
有人可以建议我在Notepad ++或Eclipse中搜索/替换一些模式吗?
答案 0 :(得分:1)
记事本++:
你可以在find中使用它:
href="([^"<]{2,}")
在替换中,您可以使用:
href="<c:url value="/fo/\1 />"
^^
^^
表示正在插入捕获的组的位置。
编辑:要匹配href
和src
,您将使用此功能:
(href|src)="([^"<]{2,}")
并替换:
\1="<c:url value="/fo/\2 />"
答案 1 :(得分:0)
在Eclipse中你可以
查找href="([^#][^\"]+)"
替换为href="<c:url value="$1" />"
虽然我认为因为你引用了引号,你可能会更好地做
替换为href="<c:url value='$1' />"