服务器其他   发布时间:2022-05-15  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了详解Linux--shell脚本之正则表达式大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_197_0@一、正则表达式的概念及特点:

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

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

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

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

@H_197_0@正则表达式的特点:

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

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

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

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

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

@H_197_0@

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

@H_197_0@例如找出多有符合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字符。

@H_197_0@1、字符类

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

@H_197_0@

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

@H_197_0@eg:

@H_197_0@ 

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

@H_197_0@2、数量限定符

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

@H_197_0@

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

@H_197_0@eg:

@H_197_0@

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

@H_197_0@3、位置限定符

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

@H_197_0@

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

@H_197_0@eg:

@H_197_0@

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

@H_197_0@4、特殊字符

@H_197_0@

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

@H_197_0@eg: 

@H_197_0@

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

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

大佬总结

以上是大佬教程为你收集整理的详解Linux--shell脚本之正则表达式全部内容,希望文章能够帮你解决详解Linux--shell脚本之正则表达式所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: