我的编程空间,编程开发者的网络收藏夹
学习永远不晚

详解Linux--shell脚本之正则表达式

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

详解Linux--shell脚本之正则表达式

一、正则表达式的概念及特点:

正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。规定一些特殊语法表示字符类、数量限定符和位置关系,然后用这些特殊语法和普通字符一起表示一个模式,这就是正则表达式(Regular Expression)。

给定一个正则表达式和另一个字符串,我们可以达到如下的目的:  

1. 给定的字符串是否符合正则表达式的过滤逻辑(称作“匹配”);

2. 可以通过正则表达式,从字符串中获取我们想要的特定部分。

正则表达式的特点:

1. 灵活性、逻辑性和功能性非常的强;

2. 可以迅速地用极简单的方式达到字符串的复杂控制。

3. 对于刚接触的人来说,比较晦涩难懂。

由于正则表达式主要应用对象是文本,因此它在各种文本编辑器场合都有应用,小到著名编辑器EditPlus,大到Microsoft Word、Visual Studio等大型编辑器,都可以使用正则表达式来处理文本内容。

二、正则表达式有三部分组成:

查看图片

例如找出多有符合xxxxx@xxxx.xxx模式的字符串(也就是mail地址),要求x可以是字母、数字、下划线、小数点、短划线,email地址的每一部分可以有一个或多个x字符,例如abc@ed.com、1_2@789-6.54等,当然,符合这个模式的并不一定是合法的mail地址,但至少可以做一次初步的筛选,筛选掉类似于a.b、c@d等不符合的字符串。再比如说,找出所有符合yyy.yyy.yyy.yyy模式的字符串(IP地址),要求y是0~9的数字,IP地址的每一部分可以有1~3个y字符。

1、字符类

字符类(Character Class):上例中的x和y,他们在模式中表示一个字符,但是取值范围是一类字符中的任意一个。

查看图片

eg:

查看图片

2、数量限定符

数量限定符(Quantifier): 邮件地址的每一部分可以有一个或多个x字符,IP地址的每一部 分可以有1-3个y字符

查看图片

eg:

查看图片

3、位置限定符

位置限定符(Anchor):描述各种字符类以及普通字符之间的位置关系,例如邮件地址分三部分,用普通字符@和.隔 开,IP地址分四部分,用.隔开,每一部分都可以用字符类和数量限定符 描述。为了表示位置关系,需要位置限定符的概念,将在下面介绍。

查看图片

eg:

查看图片

4、特殊字符

查看图片

eg:

查看图片

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程网。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

详解Linux--shell脚本之正则表达式

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

详解Linux--shell脚本之正则表达式

一、正则表达式的概念及特点:正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。规定一些特殊语法表示字符类、数量限定符和位置
2022-06-04

Linux Shell脚本的编程之正则表达式

一 正则表达式与通配符 1 正则表达式是用在文件中匹配符合条件的字符串,正则是包含匹配,grep,awk,sed等命令可以支持正则表达式 2 通配符是用来匹配符合条件的文件名,通配符是完全匹配,ls,find,cp这些命令不支持正则表达式,
2022-06-04

Linux--shell脚本之正则表达式的示例分析

小编给大家分享一下Linux--shell脚本之正则表达式的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、正则表达式的概念及特点:正则表达式是对字符串
2023-06-09

Linux中Shell脚本编程之正则表达式的示例分析

这篇文章主要介绍了Linux中Shell脚本编程之正则表达式的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一 正则表达式与通配符1 正则表达式是用在文件中匹配符合条
2023-06-09

如何在shell脚本中使用正则表达式

这篇文章将为大家详细讲解有关如何在shell脚本中使用正则表达式,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。正则表达式的概念及特点:  正则表达式是对字符串操作的一种逻辑公式,就是用事先定
2023-06-20

Centos7 Shell编程之正则表达式、文本处理工具详解

正则表达式可以很灵活的提供各种模糊匹配的筛选规则。常被用来检索、替换那些符合某个模式的文本,这篇文章主要介绍了Centos7 Shell编程之正则表达式、文本处理工具,需要的朋友可以参考下
2022-11-13

正则表达式基本语法详解

正则表达式是一种描述字符串模式的方法,可以用来匹配、查找和替换字符串。它是一种强大而灵活的工具,在文本处理和模式匹配中广泛应用。正则表达式的基本语法包括以下几个部分:1. 字面量字符:正则表达式可以包含普通字符,它们匹配自身。例如,正则表达
2023-08-15

Shell脚本中通过正则表达式匹配IP地址

在运维场景下,我们经常需要在服务器上用正则表达式来匹配IP地址。 shell和其它编程语言一样,也可以使用正则分组捕获,不过不能使用 $1或1这样的形式来捕获分组,可以通过数组${BASH_REMATCH}来获得,如${BASH_REMAT
2022-06-04

Ruby正则表达式详解

正则表达式是一种特殊序列的字符,它通过使用有专门语法的模式来匹配或查找字符串集合,这篇文章纤细介绍了Ruby大的正则表达式,文章有详细的代码示例,需要的朋友可以参考一下
2023-05-15

Java 正则表达式详解

正则表达式(Regular Expression),又称为正规表达式、规则表达式、常规表示法等,是一种用来匹配、查找和替换字符串的工具。它的语法和规则相对复杂,但却非常强大和灵活。在Java中,可以使用java.util.regex包中的类
2023-08-16

Shell if中的正则表达式使用详解

由于工作需要对用户提交的数据进行验证,这是一个简单的日期正则验证实例,有需要了解的同学可参考。shell中的if语句需要做一个正则判断,查了一下语法记录之。DATEPATTERN="^[0-9]{4}-[0-9]{1,2}-[0-9]{1,
2022-06-04

linux shell 路径截取正则表达式

最近写脚本,需要对脚本中函数传递的路径参数进行截取,发现了以下比较好用的方法,记录下: file=/dir1/dir2/dir3/my.file.txt我们可以用${ }分别替换获得不同的值:${file#*/}:拿掉第一条/及其左边的字串
2022-06-04

Linux行处理工具之grep 正则表达式详解

grep表达式有三种不同的版本,分别为basic(BRE) 、extended(ERE) 以及 perl PCRE,这篇文章主要介绍了Linux行处理工具之grep 正则表达式详解,需要的朋友可以参考下
2022-11-13

详解正则表达式之数字验证

正则表达式可以用来验证字符串是否符合特定的格式要求。在数字验证中,我们可以使用正则表达式来验证字符串是否只包含数字字符。以下是一个基本的数字验证的正则表达式:\d+解释:- \d 表示匹配任意一个数字字符- + 表示匹配前面的元素一次或多次
2023-08-15

python模块之re正则表达式详解

一、简单介绍 正则表达式是一种小型的、高度专业化的编程语言,并不是python中特有的,是许多编程语言中基础而又重要的一部分。在python中,主要通过re模块来实现。 正则表达式模式被编译成一系列的字节码,然后由用c编写的匹配引擎执行。那
2022-06-04

Bash脚本中正则表达式怎么用

这篇文章主要介绍了Bash脚本中正则表达式怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。正则表达式(简写为 regex 或者 regexp)基本上是定义一种搜索模式的字
2023-06-16

详解Linux命令中的正则表达式

命令中的正则表达式如果要在命令输出或文本中筛选内容时使用模糊查找,就需要使用正则表达式。正则表达式是一套由多个元字符组成的模糊查找模式,使用正则表达式可以快速查找和定位文本中指定的内容。1、单字符匹配符. 正则表达式主要由一些元字符和匹配模
2022-06-04

编程热搜

目录