电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

III Linux系统编程_ 32正则表达式_2 基本语法

4页
  • 卖家[上传人]:桔****
  • 文档编号:474706947
  • 上传时间:2023-11-15
  • 文档格式:DOC
  • 文档大小:55KB
  • / 4 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、第32章正则表达式2.基本语法我们知道C的变量和Shell脚本变量的定义和使用方法很不相同,表达能力也不相同,C的变量有各种类型,而Shell脚本变量都是字符串。同样道理,各种工具和编程语言所使用的正则表达式规范的语法并不相同,表达能力也各不相同,有的正则表达式规范引入很多扩展,能表达更复杂的模式,但各种正则表达式规范的基本概念都是相通的。本节介绍egrep(1)所使用的正则表达式,它大致上符合POSIX正则表达式规范,详见regex(7)(看这个man page对你的英文绝对是很好的锻炼)。希望读者仿照上一节的例子,一边学习语法,一边用egrep命令做实验。表32.1.字符类字符含义举例.匹配任意一个字符abc.可以匹配abcd、abc9等匹配括号中的任意一个字符abcd可以匹配ad、bd或cd-在括号内表示字符范围0-9a-fA-F可以匹配一位十六进制数字位于括号内的开头,匹配除括号中的字符之外的任意一个字符xy匹配除xy之外的任一字符,因此xy1可以匹配a1、b1但不匹配x1、y1:xxx:grep工具预定义的一些命名字符类:alpha:匹配一个字母,:digit:匹配一个数字表

      2、32.2.数量限定符字符含义举例?紧跟在它前面的单元应匹配零次或一次0-9?.0-9匹配0.0、2.3、.5等,由于.在正则表达式中是一个特殊字符,所以需要用转义一下,取字面值+紧跟在它前面的单元应匹配一次或多次a-zA-Z0-9_.-+a-zA-Z0-9_.-+.a-zA-Z0-9_.-+匹配email地址*紧跟在它前面的单元应匹配零次或多次0-90-9*匹配至少一位数字,等价于0-9+,a-zA-Z_+a-zA-Z_0-9*匹配C语言的标识符N紧跟在它前面的单元应精确匹配N次1-90-92匹配从100到999的整数N,紧跟在它前面的单元应匹配至少N次1-90-92,匹配三位以上(含三位)的整数,M紧跟在它前面的单元应匹配最多M次0-9,1相当于0-9?N,M紧跟在它前面的单元应匹配至少N次,最多M次0-91,3.0-91,3.0-91,3.0-91,3匹配IP地址再次注意grep找的是包含某一模式的行,而不是完全匹配某一模式的行。再举个例子,如果文本文件的内容是aaabcaadefg查找a*这个模式的结果是三行都被找出来了$ egrep a* testfile aabcaadefg

      3、a*匹配0个或多个a,而第三行包含0个a,所以也包含了这一模式。单独用a*这样的正则表达式做查找没什么意义,一般是把a*作为正则表达式的一部分来用。表32.3.位置限定符字符含义举例匹配行首的位置Content匹配位于一行开头的Content$匹配行末的位置;$匹配位于一行结尾的;号,$匹配空行匹配单词开头的位置匹配单词结尾的位置p匹配leap .,但不匹配parent、sleepyb匹配单词开头或结尾的位置batb匹配. at .,但不匹配cat、atexit、batchB匹配非单词开头和结尾的位置BatB匹配battery,但不匹配. attend、hat .位置限定符可以帮助grep更准确地查找,例如上一节我们用0-91,3.0-91,3.0-91,3.0-91,3查找IP地址,找到这两行192.168.1.11234.234.04.5678如果用0-91,3.0-91,3.0-91,3.0-91,3$查找,就可以把1234.234.04.5678这一行过滤掉了。表32.4.其它特殊字符字符含义举例转义字符,普通字符转义为特殊字符,特殊字符转义为普通字符普通字符写成表示单词开头的位置,特殊字符.写成.以及写成就当作普通字符来匹配()将正则表达式的一部分括起来组成一个单元,可以对整个单元使用数量限定符(0-91,3.)30-91,3匹配IP地址|连接两个子表达式,表示或的关系n(o|either)匹配no或neither以上介绍的是grep正则表达式的Extended规范,Basic规范也有这些语法,只是字符?+|()应解释为普通字符,要表示上述特殊含义则需要加转义。如果用grep而不是egrep,并且不加-E参数,则应该遵照Basic规范来写正则表达式。

      《III Linux系统编程_ 32正则表达式_2 基本语法》由会员桔****分享,可在线阅读,更多相关《III Linux系统编程_ 32正则表达式_2 基本语法》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    监控施工 信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.