8.2 正则表达式应用 (1).pptx

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

正则表达式应用shell运维编程

通过此次学习,同学们能够理解运算符的优先级,掌握模式表达式的应用,能够正确规范的编写正则表达式,同时在整个正则表达式的编写过程中进一步提升自己的专研能力与职业素养。教学任务

俗话说:“没有规矩,不成方圆。”生活处处需要规则。从正则表达式设定的字符串匹配规则让同学们进行学习迁移,理解人们遵守规则,生活才会有秩序,否则就会乱成一锅粥。规则是为了保证我们在良好的环境中快乐地学习、健康地成长,学校制定了各种纪律和行为规范。这些校纪校规就像校园里的“红绿灯”,时刻提醒我们注意自己的言行。思政目标

请同学在学习正则表达式应用之后读出下面给定的3条正则表达式表示的含义是什么:项目目标^[A-Za-z]+$表示什么?^[0-9]*[1-9][0-9]*$^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$

教学重点与教学目标理解并熟练应用运算符优先级理解并掌握模式表达式的应用理解并掌握常用的正则表达式

从最高到最低说明了各种正则表达式运算符的优先级顺序:运算符优先级运算符描述\转义符(),(?:),(?=),[]圆括号和方括号*,+,?,{n},{n,},{n,m}限定符^,$,\任何元字符、任何字符定位点和序列(即:位置和顺序)|替换,或操作字符具有高于替换运算符的优先级,使得m|food匹配m或food。若要匹配mood或food,请使用括号创建子表达式,从而产生(m|f)ood。

模式是那些包含一个或多个通配符的字符串,各模式之间以竖线(|)分开。*:匹配任意多个模式:file*(.c|.o)匹配文件file、file.c、file.c.c、file.c.o、file.o、file.o.c、file.o.o等,但不匹配file.h、file.s等。如下所示:正则表达式简单应用

+:匹配一个或多个模式。(注:匹配1个或多个模式)例如:file+(.c|.o)匹配文件file.c、file.c.c、file.c.o、file.o、file.o.c、file.o.o等,但不匹配file。正则表达式简单应用模式是那些包含一个或多个通配符的字符串,各模式之间以竖线(|)分开。如下所示:

正则表达式简单应用?:匹配模式表中任何一种模式。(注:匹配0个或1个模式)例如:file?(.c|.o)只匹配文件file、file.c、file.o等,不匹配file.c.c、file.c.o等。@:仅匹配模式表中一个给定模式。(注:匹配1个模式)例如:file@(.c|.o)只匹配文件file.c和file.o,但不匹配file、file.c.c、file.c.o等。

正则表达式简单应用.!:除给定模式表中的一个模式之外,它可以匹配其他任何字符串例如:file!(.c)可以匹配file、file.c.c、file.c.o、file.o、file.o.c、file.o.o,但不匹配file.c。在实际使用时,模式表达式可以递归,即每个表达式中都可以包含一个或多个模式。例如:file*(.[cho]|.sh)是合法的模式表达式。

Shell常用正则表达式“^\d+$” //非负整数(正整数+0)?

“^[0-9]*[1-9][0-9]*$” //正整数?

“^((-\d+)|(0+))$” //非正整数(负整数+0)?

“^-[0-9]*[1-9][0-9]*$” //负整数?

“^-?\d+$” //整数?

“^\d+(\.\d+)?$” //非负浮点数(正浮点数+0)?

“^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$” //正浮点数?

“^((-\d+(\.\d+)?)|(0+(\.0+)?))$” //非正浮点数(负浮点数+0)?

“^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$” //负浮点数?

Shell常用正则表达式“^(-?\d+)(\.\d+)?$” //浮点数?

“^[A-Za-z]+$” //由26个英文字母组成的

您可能关注的文档

文档评论(0)

学海无涯苦做舟 + 关注
实名认证
内容提供者

职业教育

1亿VIP精品文档

相关文档