Shell三剑客:正则表达式(元字符)

2023-12-14 10:52

本文主要是介绍Shell三剑客:正则表达式(元字符),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、定义:元字符字符是这样一类字符,它们表达的是不同字面本身的含义

二、分类:

        1、基本正则表达式元字符

#    ^ 行首定位
[root@localhost ~]# grep root  /etc/passwd
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin
[root@localhost ~]# grep ^root /etc/passwd
root:x:0:0:root:/root:/bin/bash#    $ 行尾定位
[root@localhost ~]# grep love$ 1.txt 
love#    . 匹配任意单个字符
[root@localhost ~]# grep a.c 1.txt 
abc
adc#    * 匹配前导符0次到多次
[root@localhost ~]# grep "abcde*" 1.txt 
abcd
abcde
abcdef
abcdefj#    .* 任意多个字符
[root@localhost ~]# grep ".*" 1.txt 
qian
yoa
huang
kai
kong#    [] 匹配指定范围内的一个字符
[root@localhost ~]# grep "[lL]ove" 1.txt 
love
love
Love#    [-] 匹配指定范围内的一个字符,连续的范围[root@localhost ~]# grep "[a-z]ove" 1.txt 
love
love#    [^] 匹配不在指定组内的字符
[root@localhost ~]# grep "[^lL]ove" 1.txt 
1ove
|ove#    \ 用来转义元字符('' "" \),脱意符
[root@localhost ~]# grep "l\.ve" 1.txt 
l.ve#    \< 词首定位符
[root@localhost ~]# grep "\<love" 1.txt 
love
love#    \> 词尾定位符[root@localhost ~]# grep "love\>" 1.txt 
love
love#    () 匹配稍后使用的字符的标签
:1,2 s/(.*\)/#\1/      #加注释#    x\{m\} 字符x重复出现m次
[root@localhost ~]# grep "o\{3\}" 1.txt 
|oooove#    x\{m,\} 字符x重复出现m次以上
[root@localhost ~]# grep "o\{3,\}" 1.txt 
|oooove
looove
loooooooove#    x\{m,n\} 字符x重复出现m到n次
[root@localhost ~]# grep "o\{3,4\}" 1.txt 
|oooove
looove
loooooooove

 

 

 

 

 

        2、扩展正则表达式元字符

#    + 匹配1-n个前导字符
[root@localhost ~]# egrep lo+ve 1.txt 
love
love
looove
loooooooove#    ? 匹配0-1个前导字符
[root@localhost ~]# egrep lo?ve 1.txt 
love
love#    a | b 匹配a或b
[root@localhost ~]# egrep "o|v" 1.txt 
yoa
kong
duo
gou
love
love#    () 组字符
[root@localhost ~]# egrep "love(able|rs)" 1.txt 
loveable
lovers[root@localhost ~]# egrep "loveable|rs" 1.txt 
loveable
lovers

 

 

 

这篇关于Shell三剑客:正则表达式(元字符)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/492237

相关文章

Python正则表达式匹配和替换的操作指南

《Python正则表达式匹配和替换的操作指南》正则表达式是处理文本的强大工具,Python通过re模块提供了完整的正则表达式功能,本文将通过代码示例详细介绍Python中的正则匹配和替换操作,需要的朋... 目录基础语法导入re模块基本元字符常用匹配方法1. re.match() - 从字符串开头匹配2.

Java实现远程执行Shell指令

《Java实现远程执行Shell指令》文章介绍使用JSch在SpringBoot项目中实现远程Shell操作,涵盖环境配置、依赖引入及工具类编写,详解分号和双与号执行多指令的区别... 目录软硬件环境说明编写执行Shell指令的工具类总结jsch(Java Secure Channel)是SSH2的一个纯J

Java 正则表达式的使用实战案例

《Java正则表达式的使用实战案例》本文详细介绍了Java正则表达式的使用方法,涵盖语法细节、核心类方法、高级特性及实战案例,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要... 目录一、正则表达式语法详解1. 基础字符匹配2. 字符类([]定义)3. 量词(控制匹配次数)4. 边

shell脚本批量导出redis key-value方式

《shell脚本批量导出rediskey-value方式》为避免keys全量扫描导致Redis卡顿,可先通过dump.rdb备份文件在本地恢复,再使用scan命令渐进导出key-value,通过CN... 目录1 背景2 详细步骤2.1 本地docker启动Redis2.2 shell批量导出脚本3 附录总

linux下shell脚本启动jar包实现过程

《linux下shell脚本启动jar包实现过程》确保APP_NAME和LOG_FILE位于目录内,首次启动前需手动创建log文件夹,否则报错,此为个人经验,供参考,欢迎支持脚本之家... 目录linux下shell脚本启动jar包样例1样例2总结linux下shell脚本启动jar包样例1#!/bin

JavaSE正则表达式用法总结大全

《JavaSE正则表达式用法总结大全》正则表达式就是由一些特定的字符组成,代表的是一个规则,:本文主要介绍JavaSE正则表达式用法的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录常用的正则表达式匹配符正则表China编程达式常用的类Pattern类Matcher类PatternSynta

Python中re模块结合正则表达式的实际应用案例

《Python中re模块结合正则表达式的实际应用案例》Python中的re模块是用于处理正则表达式的强大工具,正则表达式是一种用来匹配字符串的模式,它可以在文本中搜索和匹配特定的字符串模式,这篇文章主... 目录前言re模块常用函数一、查看文本中是否包含 A 或 B 字符串二、替换多个关键词为统一格式三、提

python常用的正则表达式及作用

《python常用的正则表达式及作用》正则表达式是处理字符串的强大工具,Python通过re模块提供正则表达式支持,本文给大家介绍python常用的正则表达式及作用详解,感兴趣的朋友跟随小编一起看看吧... 目录python常用正则表达式及作用基本匹配模式常用正则表达式示例常用量词边界匹配分组和捕获常用re

shell中set -u、set -x、set -e的使用

《shell中set-u、set-x、set-e的使用》本文主要介绍了shell中set-u、set-x、set-e的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参... 目录✅ 1. set -u:防止使用未定义变量 作用: 示例:❌ 报错示例输出:✅ 推荐使用场景:✅ 2. se

Linux脚本(shell)的使用方式

《Linux脚本(shell)的使用方式》:本文主要介绍Linux脚本(shell)的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录概述语法详解数学运算表达式Shell变量变量分类环境变量Shell内部变量自定义变量:定义、赋值自定义变量:引用、修改、删