erlang学习:Linux命令学习7

grep进阶,正则表达式初步学习

正则表达式简介

正则表达式是由一些具有特殊含义的字符组成的字符串,多用于查找、替换符合规则的字符串。在表单验证、Url映射等处都会经常用到,同样在linux中也能够用到。

元字符

元字符:即为有特定含义的字符,常见的元字符如下

常用的元字符
^ :匹配输入字符串的开始位置。除非在方括号表达式中使用,表示不包含该字符集合。要匹配"^“字符本身,需要转移”^"
$ :匹配输入字符串的结尾位置。如果设置了RegExp对象的Multiline属性,则"$“也匹配’\n’或’r’
. :“.”代表除”\n\s"之外的任何单个字符
\ :反斜杠,又叫转义字符,去除其后紧跟的元字符或通配符的 特殊意义
*:匹配前面的子表达式零次或多次。要匹配"*"字符,要进行\转移
[ ] :字符集合,匹配所包含的任意的一个字符
[^]: 复制字符集。匹配未包含在[ ]内的任意一个字符
[n1-n2] :字符范围。匹配指定范围内的任意一个字符。例如[a-z]可以匹配到a到z范围内的任意一个小写字母字符
{n} :n是一个非负整数,匹配确定的n次,例如“o{2}”不能匹配“Bob”中的“o”,但是能匹配到“food”中的“oo”
{n,} :n是一个非负整数,至少(最少)匹配n次。例如,“o{2,}”不能匹配"Bob"中的“o”,但是能匹配“fooooood”中的所有o。“o{1.}”等于“o+”
{n,m}: n和m均为非负整数,其中n<=m,最少匹配n次,最多匹配m次

测试文本文件如下

I am teacher
I am student
I ma student
I like Linux
I like erlang
I like Java
Hello word!12345
84327018
sdsaf
dsgfjokjdfklg
jjjj.
kkkkkkkk.
wood.
woooood.
test
text1_a
11111.
aaa_
131287974823

对字符串匹配

grep "like" test.txt -i -n  %%搜寻含有like的
grep -vn "like" test.txt -i -n  %%搜寻不含有like的

请添加图片描述

使用[]来查找集合字符
要查找testt和text时

grep "te[sx]t" test.txt -i -n

请添加图片描述
要查找包含重复或单个字符o时

grep 'oo' test.txt -i -n
grep 'o' test.txt -i -n

请添加图片描述
匹配数字

grep '[0-9]' test.txt
grep '[0-5]' test.txt

请添加图片描述

请添加图片描述

查找行首"^“与行尾字符”$"

grep '^[a-z]' test.txt -n  %%匹配开头的字符串a-z
grep '^[z-A]' test.txt -n
grep '^[A-z]' test.txt -n
grep '^[A-Z]' test.txt -n  %%匹配开头的字符串A-Z

[]中貌似只能匹配类似[0-9],[a-z],[A-Z]类似这样的,不能跨越匹配会报错
请添加图片描述

查找以.结尾的行

grep '$' test.txt -n
grep '\.$' test.txt -n

这里不知道什么原因不能够查询结尾的行,我猜测是因为我是从文本编辑器里面输入的,换行符估计产生了问题,因此要匹配以什么结尾的匹配不上。
请添加图片描述

请添加图片描述
查找任意一个字符“.”与重复字段“*”

grep -n'w..d' test.txt  %%查询wd中间有两个字母的字符串
grep -n'oo*' test.txt   %%匹配一个o

请添加图片描述
在上述结果中,“wood”字符串“w…d”匹配规则。若想要查询 oo、ooo、ooooo 等资料, 则需要使用星号()元字符。但需要注意的是,“”代表的是重复零个或多个前面的单字符。 “o*”表示拥有零个(即为空字符)或大于等于一个“o”的字符,因为允许空字符,所以执行“grep -n’o*'test.txt”命令会将文本中所有的内容都输出打印。如果是“oo*”,则第一个 o 必须存在, 第二个 o 则是零个或多个 o,所以凡是包含 o、oo、ooo、ooo,等的资料都符合标准。同理,若查询包含至少两个 o 以上的字符串,则执行“grep -n ‘ooo*’ test.txt”命令即可

请添加图片描述
查找连续字符范围{}
上述只能匹配 1-无限个o,无法匹配1-3个o的情况,如果需要相应的匹配需要使用{}

grep -n 'o\{2\}' test.txt %%查找两个o的字符串
grep -n 'wo\{2\}' test.txt %%查找w之后两个o的字符串
grep -n 'wo\{2,5\}d' test.txt %%查找w之后中间2-5个o,结尾是d的字符串

请添加图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/433976.html

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

相关文章

搭建基于H.265编码的RTSP推流云服务器

一、前言 网上能够找到的RTSP流地址&#xff0c;均是基于H.264编码的RTSP流地址&#xff0c;无法测试应用是否可以播放H265实时流为此&#xff0c;搭建本地的把H.264转码成H.265的RTSP服务器&#xff0c;不管是通过VLC搭建本地RTSP服务器&#xff0c;还是通过FFmpeg搭建本地RT…

自定义knife4j访问路径

文章目录 本文档只是为了留档方便以后工作运维&#xff0c;或者给同事分享文档内容比较简陋命令也不是特别全&#xff0c;不适合小白观看&#xff0c;如有不懂可以私信&#xff0c;上班期间都是在得 原由&#xff0c;嫌弃doc.html 太大众 直接重定向&#xff0c;直接上代码了 p…

数据结构:详解搜索二叉树

目录 一、搜索二叉树的概念 二、搜索二叉树的基本结构 三、搜索二叉树的插入 四、搜索二叉树的查找 五 、搜索二叉树的删除 一、搜索二叉树的概念 ⼆叉搜索树⼜称⼆叉排序树&#xff0c;它或者是⼀棵空树&#xff0c;或者是具有以下性质的⼆叉树&#xff1a; 若它的左子树…

smb文件夹共享设置

UOS统信三种不同场景的文件夹共享,分别是:1、UOS系统间的文件共享;2、Windows7系统访问UOS共享的文件;3、UOS系统访问Windows7共享的文件 文章目录 功能概述功能介绍第一种场景:UOS系统之间的文件共享设置步骤一:打开共享文件夹步骤二:共享管理步骤三:设置共享密码步骤…

【步联科技身份证】 身份证读取与解析———未来之窗行业应用跨平台架构

一、身份证解析代码 C# function 身份证数据解析_湖南步联科技(wzxx) {var result {};result[xm] wzxx.substr(0, 15);result[xbdm] wzxx.substr(15, 1);result[mzdm] wzxx.substr(16, 2);result[csrq] wzxx.substr(18, 8);result[dzmc] wzxx.substr(26, 35);result[gms…

【射频通信电子线路第六讲】射频信号与调制包括调幅和部分调频的内容

一、调制&#xff08;Modulation&#xff09;与解调&#xff08;Demodulation&#xff09; 1、相关概念 调制是指使一个信号&#xff08;如光信号、高频电磁振荡等&#xff09;的某些参数&#xff08;振幅、频率和相位&#xff09;按照另一个欲传输的信号的特点变化的过程。 …

普通二叉搜索树的模拟实现【C++】

二叉搜素树简单介绍 二叉搜索树又称二叉排序树&#xff0c;是具有以下性质的二叉树: 若它的左子树不为空&#xff0c;则左子树上所有节点的值都小于根节点的值 若它的右子树不为空&#xff0c;则右子树上所有节点的值都大于根节点的值 它的左右子树也分别为二叉搜索树 注意…

[ComfyUI]Flux 出图背景太模糊?一招解决!

小伙伴们在使用 Flux 出图的时候&#xff0c;应该也遇到过大多数情况下背景都是比较模糊的&#xff0c;虽然大多数时候没啥影响&#xff0c;毕竟我们很多时候都只是看主体嘛。 但是也有些场景&#xff0c;我们希望整体的构图中背景也可以高清一些&#xff0c;这样在看整张图片…

【第十六章:Sentosa_DSML社区版-机器学习之生存分析】

【第十六章&#xff1a;Sentosa_DSML社区版-机器学习之生存分析】 16.1 加速失效时间回归 1.算子介绍 加速失效时间回归模型Accelerated failure time (AFT)是一个监督型参数化的回归模型&#xff0c;它可以处理删失数据。它描述了一个生存时间的对数模型&#xff0c;所以它通…

【CSS】透明度 、过渡 、动画 、渐变

opacity 透明度transition 过渡animation 动画background 渐变 ( 线性渐变 \ 径向渐变 \ 锥形渐变 ) opacity 透明度 设置元素的透明度&#xff0c;会影响元素及其所有子元素的透明度&#xff0c;值范围&#xff1a;0&#xff08;完全透明&#xff09;到 1&#xff08;完全不透…

经济不好,但是遍地都是赚钱的机会

现在职场越来越内卷&#xff0c;裁员风波也是不断&#xff0c;前些天看到一个帖子&#xff0c;裁员都裁到应届生头上了。 都说00后整治职场&#xff0c;在如今环境下也要掂量一下了。 大家都在抱怨环境&#xff0c;可是你有没有想过&#xff0c;有些人在闷声发着小财。 下面…

Pygame中Sprite实现逃亡游戏5

在《Pygame中Sprite实现逃亡游戏4》中通过碰撞检测实现了玩家、飞龙与飞火之间的碰撞处理&#xff0c;基本上实现了逃亡功能。最后&#xff0c;实现这个逃亡游戏中文字提示的功能。 1 操作提示 当进入游戏后&#xff0c;会在玩家下方的位置给出操作提示&#xff0c;如图1所示…

数据集-目标检测系列-鲨鱼检测数据集 shark >> DataBall

数据集-目标检测系列-鲨鱼检测数据集 shark >> DataBall 数据集-目标检测系列-鲨鱼检测数据集 shark 数据量&#xff1a;6k 数据样例项目地址&#xff1a; gitcode: https://gitcode.com/DataBall/DataBall-detections-100s/overview github: https://github.com/Te…

3款照片人物开口说话AI工具,跟真人说话一样~免费!短视频带货必备!(附教程)

大家好&#xff0c;我是画画的小强 今天给大家分享一个AI图片口播数字人讲认知思维&#xff0c;单号佣金赚5W的AI带货信息差玩法&#xff0c;许多小伙伴表示对这类AI带货玩法感兴趣。 说实话&#xff0c;现在AI照片人物对口型工具&#xff0c;越来越逼真&#xff0c;很难辨识出…

JAVA开源项目 技术交流分享平台 计算机毕业设计

本文项目编号 T 053 &#xff0c;文末自助获取源码 \color{red}{T053&#xff0c;文末自助获取源码} T053&#xff0c;文末自助获取源码 目录 一、系统介绍二、演示录屏三、启动教程四、功能截图五、文案资料5.1 选题背景5.2 国内外研究现状5.3 可行性分析 六、核心代码6.1 新…

数据集-目标检测系列-豹子 猎豹 检测数据集 leopard>> DataBall

数据集-目标检测系列-豹子 猎豹 检测数据集 leopard>> DataBall 数据集-目标检测系列-豹子 猎豹 检测数据集 leopard 数据量&#xff1a;5k 想要进一步了解&#xff0c;请联系。 DataBall 助力快速掌握数据集的信息和使用方式&#xff0c;会员享有 百种数据集&#x…

赋值运算符重载

背景&#xff1a; 在EHR模块进行调试时&#xff0c;发现QVector3D对象进行赋值时&#xff0c;出现变量未赋值成功问题。 问题描述&#xff1a; 在进行代码调试时&#xff0c;发现赋值操作未成功&#xff0c;导致代码逻辑异常&#xff0c;经过分析&#xff0c;发现QVector3D 赋…

前台项目启动/打包报错 Error: error:0308010C:digital envelope routines::unsupported

在package.json中修改启动/打包语句 如图&#xff0c;我这里是打包时候报错&#xff0c;就在build里前面加上 set NODE_OPTIONS--openssl-legacy-provider && 再次打包&#xff0c;成功。

828华为云征文|部署敏捷项目管理系统工具 ZenTao

828华为云征文&#xff5c;部署敏捷项目管理系统工具 ZenTao 一、Flexus云服务器X实例介绍二、Flexus云服务器X实例配置2.1 重置密码2.2 服务器连接2.3 安全组配置2.4 Docker 环境搭建 三、Flexus云服务器X实例部署 ZenTao3.1 ZenTao 介绍3.2 ZenTao 部署3.3 ZenTao 使用 四、总…

急!现在转大模型还来得及吗?零基础入门到精通,收藏这一篇就够了

大模型的出现&#xff0c;让行内和行外大多数人都感到非常焦虑。 行外很多人想了解却感到无从下手&#xff0c;行内很多人苦于没有硬件条件无法尝试。想转大模型方向&#xff0c;相关的招聘虽然层出不穷&#xff0c;但一般都要求有大模型经验。而更多的人&#xff0c;则一直处…