- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
07 正则表达式
综述 用特定字符代表特定含义,用于字符串匹配 流派众多,主流编程语言都有自己的风格 基础的风格(引擎) 基本正则表达式(BRE) 扩展正则表达式(ERE) 示例 grep -o [[:lower:]]*@ mail.html 元字符 代表特定字符集的元字符 \w:代表A-Za-z0-9_ 代表位置的元字符 ^:代表行首 代表数量的元字符 *:任意多个 其它元字符 |:代表多选结构 代表单个字符的元字符 示例 [root@rhel ~]# cat tt a 12 ? grep \w tt grep \W tt grep \s tt grep \S tt grep 在文件中查找符合条件的行 grep root /etc/passwd:查找包含root的行 grep \s tt:查找包含空白字符的行 字符组 字符组:用户自定义的字符集,用中括号[]括起来 [a-d]:共四个字符,a、b、c、d [ad-]:共三个字符,a、d、- [a-zA-Z0-9_]:共63个字符 [p-s^]:共五个字符,p、q、r、s、^ [^p-s]:无穷多个字符,但不包括p、q、r、s 字符组用于匹配单个字符 示例 [root@rhel ~]# cat tt 01 10 001011 1 [root@rhel ~]# grep [1-9][0-9] tt 10 001011 tt文件中符合条件的行必须满足以下条件 此行包含两个或多个数字 第一个数字为1~9中个某一个 POSIX字符类 POSIX字符类-续 POSIX字符类-续 [:lower:]:匹配一个小写字母 [[:lower:]]*@ 外层的[]表示使用了字符组 内层的[:lower:]表示一个小写字母 [^[:lower:]],匹配一个非小写字母的字符 示例 grep -o [[:lower:]]*@ mail.html 代表位置的元字符 ^:匹配行首 ^tom:tom必须在行首 $:匹配行尾 tom$:tom必须在行尾 ^$,匹配空行(空格也没有) 在BRE中,若“^”不在模式的开始位置,则失去其特殊含义,“$”道理相同 示例 # cat data3 This is a test line this is another test line A line that tests this feature This ^ is a test # grep ^this data3 this is another test line # grep ^ data3 This ^ is a test 代表数量的元字符 *:0个或多个 [[:lower:]]*@ 表达式“a*”是否匹配字符串“bcd”? +:一个或多个(ERE模式) grep -E 0+ tt ?:0个或 一个(ERE模式) colou?r:匹配colour、color 注意:代表数量的元字符不能单独使用,必须跟在代表字符的元字符后面 代表数量的元字符-续 \{m\}:m为正整数,表示m个 grep o\{2\} /etc/passwd,匹配 “oo” \{m,n\}:至少m个,至多n个 grep o\{2,3\} datafile,匹配“oo”或“ooo” \{m,\}:至少m个,多了不限 示例 [root@rhel ~]# cat tt 01 10 001011 1 [root@rhel ~]# grep -E 0+ tt 01 10 001011 grep命令常用参数 -E:使用扩展的正则表达式(ERE) -i:忽略大小写 -n:显示匹配的行号 -o:仅显示匹配的字符串,不显示整行内容 -v:显示不匹配的行 -w:显示完整单词匹配的行 grep -w jul tt:匹配单词jul,不匹配诸如july之类的单词 Page ? * 正则表达式 所有单个字符 单个字符 . 非空白字符 [^ \t] \S 空白字符 [ \t] \t:制表符、TAB键 \s 非构成单词的字符 [^A-Za-z0-9_] \W 构成单词的字符 [A-Za-z0-9_] \w 说明 代表的字符集 元字符 小写字母 [a-z] [:lower:] 可见字符(无空格) \x21~\x7E [:graph:] 解释 ASCII 表示法 数字 [0-9] [:digit:] 控制字符 \x00~\x1F\x7F [:cntrl:] 空格和tab [:blank:] 大小写字母 [A-Za-z] [:alpha:] 数字和大小写字母 [A-Za-z0-9] [:alnum:] 可见字符和空格 \x20~\x7E [:print:] 标点符号 [-!#$%()*+,./:;=?@[\\\]^_`{|}~] [:punc
您可能关注的文档
- 0502-河曲电煤-上榆泉煤矿刮板机减速器修理采购文件(竞争性谈判)审核.doc
- 05 房地产购买行为分析.ppt
- 05.一般变量与替代变量.ppt
- 05生命科学研究与人体实验道德.ppt
- 04 技能探索 杨启富.ppt
- 05—简报技巧.ppt
- 05第五章律师的执业权利和义务.ppt
- 06 一致同意规则.ppt
- 04第四章 古印度与古代美洲的.ppt
- 06 死亡的伦理问题.ppt
- 部编三年级上册语文语文园地三交互版.ppt
- 2025年服装品类测试题及答案.doc
- 探索学习好方法.pptx
- 最新七S培训资料.pptx
- 2025年医院三基考试-医学临床三基(医技)历年参考题库含答案解析(5套典型考题).docx
- 2025年公安消防职业技能考试-化工消防气防技能考试历年参考题库含答案解析(5套典型考题).docx
- 2025年煤炭矿山职业技能鉴定考试-井下作业工具工历年参考题库含答案解析(5套典型考题).docx
- 2025年综合类-黑龙江住院医师妇产科-产褥期异常历年真题摘选带答案(5卷-选择题).docx
- 2025年银行知识财经金融知识竞赛-河南省农村信用社(金燕卡)知识竞赛历年参考题库含答案解析(5套).docx
- 2025年高等教育教育类自考-00467课程与教学论历年参考题库含答案解析(5套).docx
文档评论(0)