【发布时间】:2014-05-12 17:32:13
【问题描述】:
我有几行包含换行符和内容的 HTML,我想替换这样的句子:
<li class="menu-581"><a href="../you-your-me-nm.html" title="You &amp;
">You & Your Service Dog</a></li>
注意">You之前的换行符
我有第一部分,寻找 sn-p
pcregrep -r -M -l '<li class="menu-581">(.|\n)*?</li>' *
现在,我想将它输入 Perl 以用新文本替换相同的正则表达式
我正在尝试这个 perl sn-p 但它不起作用(我将它保存在一个名为 test.txt 的文件中):
ls test.* | xargs perl -pe 's/<li class="menu-581">(.|\n)*<\/li>/new/' -pi
有什么线索吗?
【问题讨论】:
-
像往常一样:不要在 html 上使用正则表达式。使用 DOM 解析器。它会让你的生活更轻松。
-
@MarcB 它是一次性任务,所以没关系
-
@Naughty.Coder: 不,做错事是绝对不行的
-
如果您正在寻找 perl 解决方案,为什么要使用
sed标记它?