&quot;(&lt;books:(.+)&gt;)&quot;改成 &quot;(&lt;books:([^&gt;]+)&gt;&quot;, 应该就可以了<br><br>
<div><span class="gmail_quote">在06-7-11,<b class="gmail_sendername">haidong jia</b> &lt;<a href="mailto:haidongj@gmail.com">haidongj@gmail.com</a>&gt; 写道:</span>
<blockquote class="gmail_quote" style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">
<div><font style="FONT-SIZE: 14px; LINE-HEIGHT: 17pt" color="#000000">功能:把文本中含有&lt;books:xxxxx&gt;的部分全部替换为空<br>遇到问题:当字符串为&lt;books:xxxxx&gt;开头并且以它结尾的时候把整个字符串都给替换了,现在求一正确的方法,多谢.<br>代码如下 <br>sub strip_books {<br>&nbsp; my $str = shift;
<br>&nbsp; my %allowed = allbooks;<br><br>&nbsp; my $j = Jcode-&gt;new(\$str, 'utf-8');<br><br>&nbsp; $j-&gt;s(&quot;(&lt;books:(.+)&gt;)&quot;, exists $allowed{$2} ? '' : $1);<br>&nbsp; <br>&nbsp; return $j-&gt;utf8;<br>} <br></font></div><br>_______________________________________________
<br>China-pm mailing list<br><a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:China-pm@pm.org">China-pm@pm.org</a><br><a onclick="return top.js.OpenExtLink(window,event,this)" href="http://mail.pm.org/mailman/listinfo/china-pm" target="_blank">
http://mail.pm.org/mailman/listinfo/china-pm</a><br></blockquote></div><br>