正则表达式续篇

位置锚定:

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

例如:

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

例如:

^:匹配的是空行

例如:

^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.hqwc.cn/news/156290.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

百度地图直接用的封装好的--自用vue的(每次项目都要有百度地图,还是搞个封装的差不多的以后可以直接拿来用)

自用的封装好的,有弹窗,轨迹回放,画点画地图 完整代码使用 百度地图的官方文档 百度地图必须的三个引用 完整代码 <template><AButton style"background-color: #3ba7ea;color: white;width: 100px;float: right" click"buttonClick">轨迹回放…

chatgpt接口调用

在线接口文档&#xff1a; https://app.apifox.com/invite?tokensymrLP7sojF6N31kZqnpZ 接口地址 https://chat.xutongbao.top/api/light/chat/createChatCompletion 请求方式 POST 请求参数 token String, 必须 prompt Array, 必须 例子一&#xff1a; 包含上下文 [ { "…

报修软件有什么用?企业如何做好设备管理与维护?

在当今的商业环境中&#xff0c;设备设施的维护和管理已经成为企业运营的重要环节。无论是学校、酒店、物业等大型企事业单位&#xff0c;还是运维集成商、制造工厂等企业单位&#xff0c;都需要对设备设施进行有效的管理。报修软件作为一种智能化的解决方案&#xff0c;为设备…

codeMirror代码编辑器,如何定位并在编辑区域输入内容

背景 最近在写UI自动化&#xff0c;发现普通的方法不能在CodeMirror编辑器里面输入内容&#xff0c;只能通过JS的方式输入内容。 于是琢磨了一下selenium和playwright这2种自动化工具&#xff0c;在CodeMirror编辑器里面输入内容的差别。 注意&#xff1a;这里在定位CodeMirr…

人脸检索 M:N(视频,摄像头),调用百度API

目录 创建百度智能云账号 代码部分&#xff1a; 创建百度智能云账号 网址&#xff1a; 百度智能云-云智一体深入产业 点击导航栏中的产品&#xff0c;再选择人脸与人体 再选择人脸搜索 进入后&#xff0c;可以先去领取免费资源&#xff0c;如果不领取&#xff0c;后面是无法…

如何快速绘制网络拓扑图

关于网络拓扑 网络拓扑能直观明了的展示网络中各网元之间的关系&#xff0c;极大方便运维人员对网络进行实时监测、优化配置、故障排查等操作。 传统采用Visiot或PowerPoint的方式存在耗时耗力且无法实现动态更新&#xff0c;维护及使用成本高&#xff1b;可展现的内容有限&a…

小红书穿搭类种草营销怎么做?纯干货

在众多营销方式中&#xff0c;穿搭类种草营销以其独特的优势在小红书平台上崭露头角。穿搭类种草营销&#xff0c;以其独特的优势&#xff0c;成为了品牌和商家推广产品的重要方式。其优势主要体现在以下几个方面&#xff1a; 1. 高度相关性&#xff1a;小红书平台的用户主要是…

【Cargo Therapeutics】申请1亿美元纳斯达克IPO上市

来源&#xff1a;猛兽财经 作者&#xff1a;猛兽财经 猛兽财经获悉&#xff0c;美国生物制药公司【Cargo Therapeutics】近期已向美国证券交易委员会&#xff08;SEC&#xff09;提交招股书&#xff0c;申请在纳斯达克IPO上市&#xff0c;股票代码为(CRGX),Cargo Therapeutics…

Unity2D中瓦片地图的创建与绘制教程

Unity2D中瓦片地图的创建与绘制 素材切割创建地图创建瓦片绘制地图瓦片调色板画笔拓展素材资源链接 素材切割 选中以下素材&#xff0c;以Tiles为例&#xff08;素材链接在文章最下方&#xff09; 修改素材属性。 将Sprite Mode属性改为Multiple多张&#xff08;不然切割不了&…

针对实体商家技术开发一体化营销工具都包含那些功能呢?

1.批量剪辑技术研发 做的数学建模算法&#xff0c;数学阶乘的组合乘组形式&#xff0c;采用两套查重机制&#xff0c;一套针对素材进行查重抽帧素材&#xff0c;一套针对成片进行抽帧素材打分制度查重&#xff0c;自动滤重计入打分。 2.账号矩阵分发开发 多平台&#xff0c;…

echarts 画散点图, x周,y周在指定位置标志一下

文章目录 echarts 画散点图&#xff0c; x周&#xff0c;y周在指定位置标志一下示例一例子二示例三 echarts 画散点图&#xff0c; x周&#xff0c;y周在指定位置标志一下 示例一 let scatterData {data: [[[-0.2, -0.6],[0.4, 0.3],[0.1, 0.4],[0.3, 0.5],[0.09, 0.1],[0.7,…

vue2:路由前置守卫无法获取到this.$store.state.xxx

在获取到vuex的数据时候&#xff0c;想在router目录下的index.js文件去获取到vuex仓库中声明的全局变量&#xff0c;但是通过this.$store.stote.xxx去获取的时候&#xff0c;报错提示&#xff1a;$store未定义 一、store/index.js const store new Vuex.Store({state: {// 属…