在做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. tomcat - class sun.awt.X11GraphicsEnvironment异常处理

    原因导致 经过Google发现很多人也出现同样的问题.从了解了X11GraphicEnvironment这个类的功能入手,一个Java服务器来处理图片的API基本上是需要运行一个X-server以便能 ...

  2. Java自学-Lambda 方法引用

    Lambda 方法引用 步骤 1 : 引用静态方法 首先为TestLambda添加一个静态方法: public static boolean testHero(Hero h) { return h.h ...

  3. SpringBoot初学(4)– JdbcTemplate和Mybatis

    前言 github: https://github.com/vergilyn/SpringBootDemo 代码位置: 一.Spring Boot集成JdbcTemplate或NamedParamet ...

  4. 手写MyBatis流程

    MyBatis 手写MyBatis流程 架构流程图 封装数据 封装到Configuration中 1.封装全局配置文件,包含数据库连接信息和mappers信息 2.封装*mapper.xml映射文件 ...

  5. Local changes were not restore

    问题是这样的: 更新代码的时候出现这个弹框,不能更新最新代码 解决如下: 直接点击Clear [注意:这个操作是放弃本地所有的修改,如果要找回代码千万不要点击] 再点击Apply Stash  就可以 ...

  6. AMC Problems and Solutions

    AMC Problems and Solutions:https://artofproblemsolving.com/wiki/index.php/AMC_Problems_and_Solutions ...

  7. Linux的文件、目录权限管理

    查看文件夹的详细信息 [root@s25linux ~]# ll /tmp总用量 4drwxr-xr-x. 2 root root   6 2月 17 11:00 hehe   #文件夹 解读它的信息 ...

  8. 论文阅读笔记(八)【IEEEAccess2019】:High-Resolution and Low-Resolution Video Person Re-Identification: A Benchmark

    Introduction (1)Motivation: 监控视频中的行人,有的比较清晰,有的因为距离较远非常模糊. 在高低分辨率方面的行人重识别缺乏数据集和研究. (2)Contribution: ① ...

  9. k8s service的四种类型

    ClusterIp 默认类型,每个Node分配一个集群内部的Ip,内部可以互相访问,外部无法访问集群内部. NodePort 基于ClusterIp,另外在每个Node上开放一个端口,可以从所有的位置 ...

  10. 获取properties文件的内容

    获取properties文件的内容 public void test() throws Exception{ String resource = "application.propertie ...