Linux sed识别HTML标签

在做Linux作业,遇到一题用sed替换掉文件中的特殊字符,其中HTML标签就是一大堆特殊字符。

先来说说sed的替换使用“s/待替换的字符/将替换成的字符/”

其后还可以跟g,即“s///g”,表示全局替换,整个文本都会执行替换词。

再者,遇到相同字符串中含有大小字母,忽略大小字母进行替换,则使用i,即“s///i”

如果遇到需要执行多个sed命令,可以使用-e,同时执行多个命令。如:sed -e "2d" -e "s/ABC/XYZ/i";

现在再来说说重点,如何替换:

1.只想单纯过滤掉html标签,显示内容: 

"s/<[^>]*>//g"

2.识别出html标签(这个要换成与html标签对应的字符):

下面的是一些对应字符替换

   s/<title>/.TL\n/g

  s/</title>//g
  s/<author>/.AU\n/g
  s/</author>//g
  s/<institution>/.AI\n/g
  s/</institution>//g
  s/<abstraction>/.AB/g
  s/</abstraction>/.AE/g
  s/<i>/.I /g
  s/</i>/\n/g
  s/<h1>/.NH\n/g
  s/</h1>//g
  s/<p>/.PP/g
  s/</p>//g
  s/<foot>/.FS/g
  s/</foot>/.FE/g
  s/<li>/.IP/g
  s/</li>//g
  s/<quote>/.QP/g
  s/</quote>//g
  s/<table>/.TS/g
  s/</table>/.TE/g
  s/<equation>/.EQ/g
  s/</equation>/.EN/g
  s/<picture>/.PS/g
  s/</picture>/.PE/g
  s/<pre>/.DS/g
  s/</pre>/.DE/g

posted @ 2017-04-05 17:22  米饭!大米饭  阅读(1969)  评论(0编辑  收藏  举报