首页 > 其他 > 详细

grep与正则表达式

时间:2019-08-14 15:02:57      阅读:66      评论:0      收藏:0      [点我收藏+]

1、grep程序

Linux下有文本处理三剑客 --  grep  sed  awk

grep:文本  行过滤工具

sed:文本  行编辑器(流编辑器)

awk:报告生成器(做文本输出格式化)

grep  包含三个命令: grep egrep fgrep,他们是用来进行 行模式(pattern)匹配的

egrep=grep -E  //使用扩展的正则表达式进行匹配

fgrep=fast grep  ///只使用文件通配符进行匹配

grep默认使用正则表达式进行文本匹配!!!!!!!!!!

grep的用法:

grep 选项  .....pattren

-E   支持使用扩展的正则表达式(ERE)(regexp)

-P   使用perl语言的正则表达式引擎进行搜索(每一种语言的正则表达式引擎都不相同,甚至sed grep awk使用的regexp引擎也不相同)

-i 忽略大小写

-v  进行反选

-o  仅仅输出匹配的内容(默认输出的是匹配到的行)

--color=auto  语法着色

-n  显示行号

pattern ---- 正则表达式

作用:通过一些特殊的字符,来表示一类字符内容,然后交给前面的命令来执行;如果使用特殊字符本身含义,就需要 \ 进行转义;

1、字符匹配

.  任意一个字符   ?

[]  范围内的任意一个字符

[^]范围外的任意一个字符

字符类:[:digit:]  [:alnum:]  [:alpha:]  [:lower:]  [:upper:]  [:space:]  [:punct:]

2、次数匹配

*  匹配前面的字符0次到n次

? 匹配前面的字符0次到1次

+  匹配前面的字符1次到n次

\{m\}匹配前面的字符m次

a\{7\}     aaaaaaaaa

\{m,n\}匹配前面的字符m到n次

\{0,n\}  匹配前面的字符0次到n次

\{m,\}匹配前面的字符至少m次

3、位置锚定

^  锚定行首

$  锚定行尾

\b  锚定词首和锚定词尾

\>锚定词尾

<\锚定词首 

4、分组

技术分享图片

技术分享图片

 技术分享图片

技术分享图片

 

 

 

 

2、正则表达式

 

grep与正则表达式

原文:https://www.cnblogs.com/yjkyjk/p/11351852.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!