正则表达式续篇

news/2024/11/26 7:30:21/

位置锚定:

^:行首锚定,表示以什么为开头

例如:

$:行尾锚定,表示以什么为结尾

例如:

^:匹配的是空行

例如:

^root$:匹配整行,而且整行只能有这一个字符串

实验:/etc/fstab中去除#和空行

或者

\ <\b:词首锚定,用于单词模式的左侧(连续的字符,数字,下划线都算单词内部)

例如:

\ >\b:词尾锚定,用于单词模式的右侧

例如:

\broot\b:匹配整个单词,而不是匹配行

例如:

分组和逻辑或:

分组:()

例如:

逻辑或:\ |

例如:

扩展正则表达式:

grep -E 或者 egrep #这是grep的扩展正则表达式

它与上篇内容的正则表达式唯一的区别就是少了\ 转义符

sed -r #这是sed的正则表达式

实验:将ifconfig ens33中的地址与子网掩码还有广播地址单独列出来

实验:将邮箱地址匹配出来

实验:查找ifconfg命令结果中的1-255之间的整数

实验:显示/etc/passwd当中,所有以sh结尾的行

实验:在/etc/inittab匹配所有以s开头,而且以d为结尾的单词。

实验:将文本中的内容匹配出来

文本内容是:

我自己的答案:

老师的答案:

实验:高亮显示passwd文件中冒号,及其两侧的字符

我自己的答案:

老师的答案:

sed:是文本三剑客中的第二种

第一种grep主要就是查

sed重要的功能就是免交互

文本三剑客:都是按行来处理

sed:是一种流编辑器

除非确认操作,否则数据一概不变,在缓冲区的数据,展示结束之后,会被立刻销毁

此处带插入图片:

-e:指定命令来处理输入的文本文件,只有一个操作命令,-e可以不写,一般都是执行多个操作命令-e

-f用指定文件中的脚本来对另外一个文件进行处理

A B

A脚本命令 ----B文件内容进行处理

-i:将会直接生效,慎用

-n:屏蔽默认输出。只显示一条结果

操作命令:

s:替换字符

d:删除内容,删除指定行

a:新增,在当前行的下面插入一行指定内容

i:插入,在选定行的上面插入一行内容

c:替换整行

y:单字符转换,转换前后的字符长度必须保持一致

p:打印

r:扩展正则表达式

sed:它的主要功能就是对文本内容的增删改查

此时我的文本内容是:

这是用sed输出打印内容:

打印第二行,或者打印第六行:

打印行号:

这是即打印行号又打印内容

这是直接打印文本中的最后一行

这是打印文本中的2到6行

这是打印文本中的2和6行

这是打印文本中的奇数行

这是打印文本中的偶数行

对字符串内容进行过滤打印

这是从第40开始一直到第一个bash出现

这是打印这一行最少两个的99:的内容

实验:要么root开头,要么bash结尾

面试题:如何免交互删除文件的内容,保留文件,至少两种方式

第一种:sed -i 'd' test.txt

第二种:cat /dev/null > test1.txt

这是删除第三行,并且打印剩余内容

这是删除第五行到第八行,并且打印剩余内容

这是删除第五行到最后一行,并且打印剩余内容

这是删除第五行和第七行,并且打印剩余内容

这是匹配字符串的内容进行删除

面试题:如何删除空行。或者是过滤空行

总共有三种方式:

实验:

www.Abc123.com.cn

www.1230.cn

http://www.baidu.org

https:www.360buy.cn

将这些地址匹配出来

实验:将以下内容匹配日期格式:

2023-11-10 19:23:33

2023-11 06:00:00

2023 08:00

[root@ky01zb ~]# cat timu7.txt | grep -E "[0-9]+(|-)(|0[1-9]|1[0-2])(|-)(|0[1-9]|[1-2][0-9]|3[0-1]) (|[0-1][0-9]|2[0-3])(|:)(|[0-5][0-9])(|:)(|[0-5][0-9])"
 


http://www.ppmy.cn/news/1192425.html

相关文章

搜维尔科技:scalefit生物力学人体工学软件分析!

人体工程学分析 21加载参数和头像显示 识别(隐藏的)健康风险 根据DGUV交通灯进行生物反馈(DIN/ISO) 实时应力分析 三维空间可视化 静态/动态肩载 用左/右赋值加载输入 腰椎间盘压缩计算 距离和定时器显示 带有运动跟踪的化身/视频叠加 外骨骼与CAD工作站仿真 CSV原始…

目标检测算法改进系列之添加EIOU,SIOU,AlphaIOU,FocalEIOU等

YOLOv8添加EIoU,SIoU,AlphaIoU,FocalEIoU,Wise-IoU等 yolov8中box_iou其默认用的是CIoU&#xff0c;其中代码还带有GIoU&#xff0c;DIoU&#xff0c;文件路径&#xff1a;ultralytics/yolo/utils/metrics.py&#xff0c;函数名为&#xff1a;bbox_iou 原始代码 def bbox_i…

【vtk学习笔记4】基本数据类型

一、可视化数据的基本特点 可视化数据有以下特点&#xff1a; 离散型 计算机处理的数据是对无限、连续的空间进行采样&#xff0c;生成的有限采样点数据。在某些离散点上有精确的值&#xff0c;但点与点之间值不可知&#xff0c;只有通过插值方式获取数据具有规则或不规则的结…

【数据结构】单向链表的增删查改以及指定pos位置的插入删除

目录 单向链表的概念及结构 尾插 头插 尾删 ​编辑 头删 查找 在pos位置前插 在pos位置后插 删除pos位置 删除pos的后一个位置 总结 代码 单向链表的概念及结构 概念&#xff1a;链表是一种 物理存储结构上非连续 、非顺序的存储结构&#xff0c;数据元素的 逻辑顺序 是…

美观且可以很方便自定义的MATLAB绘图颜色

函数介绍 主函数是draw_test&#xff0c;用于测试函数。 draw_h是函数&#xff0c;用于给Matlab提供美观且可以很方便自定义的绘图颜色。 draw_h函数介绍 这是一个带输入输出的函数&#xff0c;输入1/2/3&#xff0c;输出下面三种颜色库的配色&#xff0c;每种库均有五种颜色…

2023年国赛如何运行脚本文件

1、设备脚本文件运行&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/1xqLvO0k7LIJVLkzcL0KohQ?pwdwgzj 提取码&#xff1a;wgzj 二维码 2、linux虚拟机脚本文件运行 链接&#xff1a;https://pan.baidu.com/s/1vzRt01AT4u77ynel1KWCaw?pwdwgzj 提取码&#xff1…

计算机毕业设计选题推荐-校园失物招领微信小程序/安卓APP-项目实战

✨作者主页&#xff1a;IT毕设梦工厂✨ 个人简介&#xff1a;曾从事计算机专业培训教学&#xff0c;擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。 ☑文末获取源码☑ 精彩专栏推荐⬇⬇⬇ Java项目 Py…

利用C++实现RANSAC拟合多条直线并提出符合要求的直线,标准库和手写(不使用任何库、链表方式)两种方法

**背景&#xff1a;**2D/3D激光雷达扫描的点云数据&#xff0c;拟合直线做分析&#xff0c;实现总共有三种方法&#xff1a; &#xff08;1&#xff09;PCL点云库实现 &#xff08;2&#xff09;利用标准库手写 &#xff08;3&#xff09;不使用任何库&#xff0c;链表方式实现…