【发布时间】:2015-12-09 15:14:36
【问题描述】:
我有一个 html 文本文件,我想对其进行格式化,以便段落始终位于同一行,例如
<p>paragraph info here</p>
而不是
<p>paragraph
info here </p>
有没有工具可以让我做到这一点
【问题讨论】:
-
sed或awk可以帮助您。 -
令人惊讶的是,您最好的选择是使用 xml 解析器
我有一个 html 文本文件,我想对其进行格式化,以便段落始终位于同一行,例如
<p>paragraph info here</p>
而不是
<p>paragraph
info here </p>
有没有工具可以让我做到这一点
【问题讨论】:
sed 或 awk 可以帮助您。
您可以使用sed
cat test.html |sed ':a;N;$!ba;s/\n/ /g' |sed 's/<\/p> /<\/p>\n/g'
在第一次运行时,它会删除所有换行符,然后在段落标记之后添加它
不清楚,但可以工作
【讨论】:
...
之间的行呢?虽然段落总是在同一行可以通过简单地将整个文件连接到一行来满足要求,但这种解决方案不那么激进:
perl -pe 'if (/<p>/../<\/p>/) { s/\n/ / unless /<\/p>/ }' test.html
【讨论】: