【发布时间】:2016-05-12 16:10:48
【问题描述】:
我正在尝试用以下表达式替换标签之间的一些内容
sed -i -e ':a;N;$!ba' -e 's#<a href="/" class="logo">.*</a>#<a href="/" class="logo">{{{ svg "/myLogo.svg" 100 100 }}} <img src="/logo.png"></a>#' $file
我面临的问题是将它应用于如下文本:
<div class="bar">
<a href="/" class="logo">
<svg viewBox="13.195 149.965 803 267.334">
<path fill="#6A5B53" d="M233.773,218.468l-6.19,65.33c-3.429-29.427-19.904-64.188-41.427-82.473
c0.667-1.048-0.381-8,0.476-8.856L266.773,218.468z"/>
<path fill="#FFC3B7" d="M260.583,285.894c0.476-63.331-51.236-116.662-115.424-116.377/>
</svg>
<image src="/logo.jpg"> </svg>
</a>
<ul class="newmenu"><li><a href="/char" title="">Char</a></li>
<li><a href="/price" title="">Price</a></li>
<li><a href="/account" title="">Account</a></li>
<li><a href="/login" title="">Login</a></li>
</ul> <div class="log">.....
所以在我执行之后,脚本会替换它直到最后一个</a>,而不是替换到第一个</a>。
如何防止一直替换到最后一个标签?
【问题讨论】: