首页 > 系统相关 >linux 中 正则表达式* 和 ?

linux 中 正则表达式* 和 ?

时间:2023-05-11 09:23:57浏览次数:31  
标签:IDT9S0E 正则表达式 DESKTOP linux test home echo root

 

* 表示匹配前一个字符0次或者多次;

?表示匹配前一个字符0次或者1次, 且只在扩展正则表达式中生效。

 

001、

root@DESKTOP-IDT9S0E:/home/test# echo "ik" | grep "ie?k"
root@DESKTOP-IDT9S0E:/home/test# echo "ik" | sed -n '/ie*k/p'  ## *表示匹配0次或者多次
ik
root@DESKTOP-IDT9S0E:/home/test# echo "ik" | grep "ie*k"     ## *表示匹配0次或者多次
ik
root@DESKTOP-IDT9S0E:/home/test# echo "ik" | grep "ie?k"
root@DESKTOP-IDT9S0E:/home/test# echo "ik" | grep -E "ie?k"  ## ?表示匹配0次或者1次,且扩展正则
ik

 

002、

root@DESKTOP-IDT9S0E:/home/test# echo "ieeeek" | sed -n '/ie*k/p'  ## *号表示匹配0次或者多次
ieeeek
root@DESKTOP-IDT9S0E:/home/test# echo "ieeeek" | grep "ie*k"
ieeeek
root@DESKTOP-IDT9S0E:/home/test# echo "ieeeek" | grep -E "ie?k"   ## ?表示匹配0次或者1次
root@DESKTOP-IDT9S0E:/home/test# echo "ik" | grep -E "ie?k"       
ik
root@DESKTOP-IDT9S0E:/home/test# echo "iek" | grep -E "ie?k"
iek
root@DESKTOP-IDT9S0E:/home/test# echo "ieek" | grep -E "ie?k"

 

003、

root@DESKTOP-IDT9S0E:/home/test# echo "baeeaeeat" | sed -n '/b[ae]*t/p'
baeeaeeat
root@DESKTOP-IDT9S0E:/home/test# echo "baakeeet" | sed -n '/b[ae]*t/p'

 

只要 a 和 e 字符以任何组合形式出现在 b 和 t 字符之间(就算完全不出现也行),模式就能够匹配。如果出现了字符组之外的字符,该模式匹配就会不成立。

 

参考: https://mp.weixin.qq.com/s?__biz=MzUxMjEyNDgyNw==&mid=2247513225&idx=1&sn=0b4119aa05476f6f25a1603dd0b46269&chksm=f96bc67dce1c4f6bd989697ea7d0df177e9e49377b3e5839e6902f5f0c7a9bd5de4c3f9d0a67&mpshare=1&scene=23&srcid=0510LQZpQrkaE3X3MuCgBeUT&sharer_sharetime=1683650310883&sharer_shareid=50b75c6a886e09824b582fb782a7678b#rd

 

标签:IDT9S0E,正则表达式,DESKTOP,linux,test,home,echo,root
From: https://www.cnblogs.com/liujiaxin2018/p/17389998.html

相关文章

  • Solus Linux 改变发展方向
    Solus是一个独立开发的 Linux 发行版,它的一大特色就是Solus自创的Budgie桌面环境(最新的Fedora也已经新增了这个桌面环境),当然用户也可以选择其他常见的GNOME、MATE或KDEPlasma作为桌面环境。它的软件包管理器eopkg是基于PardusLinux的PiSi软件包管理系统。......
  • Solus Linux 改变发展方向
    Solus是一个独立开发的 Linux 发行版,它的一大特色就是Solus自创的Budgie桌面环境(最新的Fedora也已经新增了这个桌面环境),当然用户也可以选择其他常见的GNOME、MATE或KDEPlasma作为桌面环境。它的软件包管理器eopkg是基于PardusLinux的PiSi软件包管理系统。......
  • Solus Linux 改变发展方向
    Solus是一个独立开发的 Linux 发行版,它的一大特色就是Solus自创的Budgie桌面环境(最新的Fedora也已经新增了这个桌面环境),当然用户也可以选择其他常见的GNOME、MATE或KDEPlasma作为桌面环境。它的软件包管理器eopkg是基于PardusLinux的PiSi软件包管理系统。......
  • linux systemd启动
    1.常用基本命令列出所有正在运行服务systemctllist-units--type=servicesystemctllist-units--type=service--all可以列出已经loaded但已经不活动的服务列出所有targetsystemctllist-units--type=target列出所有socketsystemctllist-units--type=socket列......
  • Linux xfs文件系统stat命令Birth字段为空的原因探究
    在Linux平台找出某个目录下创建时间最早的文件,测试验证脚本结果是否准确的过程中发现一个很有意思的现象,stat命令在一些平台下Birth字段有值,而在一些平台则为空值,如下所示:RHEL8.7下,XFS文件系统[mysql@mysqlu02 ~]$ more /etc/redhat-release Red Hat Enterprise Linux......
  • linux引导过程分析
    1Linux引导过程1.主机加电后,系统首先加载BIOS,这个BIOS是烧录在主板上的ROM芯片上的。2.BIOS启动后,执行了一些例如开机自检,硬件初始化等工作,然后读取硬盘MBR分区的第一个扇区(前512字节),其中前446字节储存了一个小程序叫做bootloader,中间的64字节是磁盘分区表,最后两个字节是......
  • linux 中sed命令实现大小写的转换
     001、大写转换为小写root@DESKTOP-IDT9S0E:/home/test#lsa.txtroot@DESKTOP-IDT9S0E:/home/test#cata.txt##测试数据AWFhhddmehDGEE345efffrrthhkkroot@DESKTOP-IDT9S0E:/home/test#sed's/[a-z]/\U&/g'a.txt##U为大写AWFH......
  • 在Linux 系统中如何复制当前目录和子目录中的 .jpg 文件到当前位置
    在Linux系统中,你可以使用find命令来查找当前目录和子目录中的.mp4和.jpg文件,然后使用cp命令将它们复制到当前位置。下面是一个示例命令:find.-typef\(-name"*.mp4"-o-name"*.jpg"\)-execcp{}.\;这个命令使用了find命令来查找文件。find.表示在当前......
  • Linux网络编程(学习笔记)
    文中python代码来自老师的教学代码,感谢我的老师~~1.linux网络数据处理过程:网卡->协议栈->网络1)应用层输出数据socket层->协议层->接口层2)应用层接收数据内核层(接口层->协议层->插口层)->用户空间的用户应用2.socket是什么socket类似jdbc,是一种接口,每种操作系统有不同的实......
  • 折腾野火linux板子学到的东西
    添加编译器相关添加交叉工具链,需要修改/etc/profile修改完成后,需要立即生效(不需要重启),可以使用如下命令:source/etc/profile 如果遇到环境变量配置以后,能够找到版本(也就是说输入命令的开头按tab以后能够出现补全),如果还有问题,这是因为64位下运行32编译器缺少相应的库文......