在做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

Linux sed识别HTML标签的更多相关文章

  1. 理解linux sed命令

    理解linux sed命令(2010-02-27 18:21:20) 标签:linuxshellsed替换 分类:革命本钱 1. Sed简介sed是一种在线编辑器,它一次处理一行内容.处理时,把当 前 ...

  2. Linux sed 替换第一次出现的字符串

    /********************************************************************************* * Linux sed 替换第一次 ...

  3. linux sed命令参数及用法详解

    linux sed命令参数及用法详解 http://blog.csdn.net/namecyf/article/details/7336308 1. Sed简介 sed 是一种在线编辑器,它一次处理一 ...

  4. linux sed 批量替换多个文件中的字符

    格式: sed -i "s/查找字段/替换字段/g" `grep 查找字段 -rl 路径` linux sed 批量替换多个文件中的字符串 sed -i "s/oldst ...

  5. 在IE6/7/8下识别html5标签

    识别html5标签: html5添加了许多语义化的标签,比如<nav></nav>,<aside></aside>,<article>< ...

  6. [转帖]linux sed命令

    linux sed命令就是这么简单 https://www.cnblogs.com/wangqiguo/p/6718512.html 用到的最多的就是一个sed -i 's/nn/mm/' 的命令了. ...

  7. jsp不解析el表达式,不识别jstl标签,找不到http://java.sun.com/jsp/jstl/core

    问题描述: jsp页面中el表达式,例如:${pageContext.request.contextPath},原样呈现,未被解析. 解决方案: 为jsp页添加page指令如下: <%@ pag ...

  8. learn Linux sed command

    learn Linux sed command 一.参考文档: . sed命令详解 http://qifuguang.me/2015/09/21/sed%E5%91%BD%E4%BB%A4%E8%AF ...

  9. 【转】linux sed命令

    转自:linux sed命令就是这么简单 参考:Linux三大剑客之sed:https://blog.csdn.net/solaraceboy/article/details/79272344 阅读目 ...

随机推荐

  1. WebGL_0002:palycanvas 配置文件路径

    playcanvas 配置文件路径https://s3-eu-west-1.amazonaws.com/apps.playcanvas.com/wmSPTNhb/config.jsonsence 地址 ...

  2. spring boot的一个小项目小型进销存系统

    项目所需的依赖: <dependency> <groupId>org.springframework.boot</groupId> <artifactId&g ...

  3. React函数式组件使用Ref

    目录: 简介 useRef forwardRef useImperativeHandle 回调Ref 简介 大家都知道React中的ref属性可以帮助我们获取子组件的实例或者Dom对象,进而对子组件进 ...

  4. atcoder Keyence Programming Contest 2020 题解

    比赛地址 A 题意:给一个\(n*m\)的初始为白色的矩阵,一次操作可以将一行或一列染成 黑色,问至少染出\(k\)个黑点的最少操作次数. \(n\),\(m\)<=100,\(k\)<= ...

  5. ng-辅助操作

    创建组件,指令,过滤器和服务 # 创建组件 ng generate component my-new-component # 创建组件别名 ng g component my-new-componen ...

  6. 编程中的幂等性 —— HTTP幂等性

    幂等(idempotent.idempotence)是一个数学与计算机学概念,常见于抽象代数中. 在编程中.一个幂等操作的特点是其任意多次执行所产生的影响均与一次执行的影响相同.幂等函数,或幂等方法, ...

  7. 嵊州D6T2 城市 city

    城市 city [问题描述] 众所周知,why 是czyz 王国的国王. czyz 王国一共有n 个城市,每个城市都有一条道路连向一个城市(可能连向这个城市自己). 同时,对于每一个城市,也只有一条道 ...

  8. BZOJ#2121. 字符串游戏 [区间dp]

    // powered by c++11 // by Isaunoya #include<bits/stdc++.h> #define rep(i , x , y) for(register ...

  9. vue router的嵌套使用与传值的query方式

    嵌套路由 当我们不满足与 /home这种路由,而是希望通过 /home/news和/home/message访问一些内内容 那么就需要嵌套路由了 实现嵌套路由有两个步骤: ·创建对应的子组件,并且在路 ...

  10. Kubernetes Pod故障归类与排查方法

    Pod概念 Pod是kubernetes集群中最小的部署和管理的基本单元,协同寻址,协同调度. Pod是一个或多个容器的集合,是一个或一组服务(进程)的抽象集合. Pod中可以共享网络和存储(可以简单 ...