2016-02-09 43 views
0

我想所有的文本复制标记之间的网站:如何在2个html标签之间复制文本?

<p> and </p>

使用bash。 你有一个想法如何做到这一点?

+3

不要这样做。而是使用HTML解析器。 – SLaks

+0

使用XML/HTML解析器(xmlstarlet,xmllint,...)。 – Cyrus

+0

您是否希望从HTML页面中获取文本,或者是否希望通过填充模板html页面中'

'和'

'之间的空格以及其他字符串来制作HTML页面? –

回答

0

正如上面的评论所述:甚至不要尝试。没有可靠的方法来解析与Bash内部的HTML。 但是,当您使用shell时,您可能会使用第三方命令行工具,如pup,它们是在命令行上为HTML解析而构建的。

0

是的,HTML解析器是更好的选择。但是,如果你只是想快速抢在第一组的P标签之间的文本,你可以使用Perl:

perl -n0e 'if (/<p>(.*?)<\/p>/s) { print $1; }' 

例如:

echo " 
<p>A test 
here 
today</p> 
<p>whatever</p> 
" | perl -n0e 'if (/<p>(.*?)<\/p>/s) { print $1; }' 

这将输出:

A test 
here 
today 
相关问题