grep 及正则表达式
grpe 及正则表达式
文本查找的需要:grep,egrep,fgrep
grep: 根据模式,搜索文本,并将符合模式的文本行显示出来。
pattern : 文本字符以及正则表达式的元字符组合而成的匹配条件
grep [options] pattern [file...]
-i :忽略大小写
--color :颜色突出显示
-v: 显示没有匹配到的行(反向匹配)
-o : 只显示被模式匹配到的字符串(一个字符串显示为一行)
* :任意长度字符
?:任意单个字符
[]:
[^]
正则表达式: re regular expression regexp
元字符:
.: 匹配任意单个字符
[]:匹配指定范围内的任意单个字符
[^]:匹配指定范围外的任意单个字符
字符集合: (引用的时候还要加一个 [ ] )
[:digit:] 数字
[:lower:] 小写字母
[:upper:] 大写字母
[:punct:] 标点符号
[:space:] 空白字符
[:alpha:] 所有字母
[:alnum:] 所有数字和字母
匹配次数(贪婪模式:尽可能长的匹配):
* :匹配其前面的字符任意次
a,b,ab,aab,acb,adb,anib
a*b :表示a 出现任意次 然后匹配个b ,所以上面能匹配的是,b,ab,aab
.* :匹配任意长度的任意字符
a.*b : 则表示匹配a开头b结尾的字符串,中间任意啥都行 . 表示任意字符,* 表示匹配 . 任意次。
\?: 匹配其前面的字符1次或0次
a\?b
\{m,n\}匹配其前面的字符至少m次,至多n次
\是转义字符,避免被shell解析为命令行展开
a\{1,3}b 匹配ab,a出现至少1次,最多3次的字符 --> ab,aab,aaab
a.\{1,3}b a和b之间出现任意字符,最少1个,最多3个
位置锚定:
^ : 锚定行首,此字符后面的任意内容必须出现在行首
$ : 锚定行尾,此字符前面的任意内容必须出现在行尾
^$: 空白行
\<或\b: 锚定词首,其后面的任意字符必须作为单词首部出现
\>或\b: 锚定词尾,其前面的任意字符必须作为单词的尾部出现
分组:
\(\)
\(ab\)* : ab作为一个整体,可以出现任意次
后向引用
\1:引用第一个左括号以及与之对应的右括号所包括的所有内容 \(ab\).*\1
\2:引用第二个左括号以及与之对应的右括号所包括的所有内容 \(ab\).*\2
\3:引用第三个左括号以及与之对应的右括号所包括的所有内容 \(ab\).*\3
正则表达式:
basic regexp: 基本正则表达式
extended regexp:扩展正则表达式。
基本正则:
.:
[]:
[^]:
次数匹配:
*:
\?: 0或1次
\{m,n\} :至少m次,至多n次
锚定:
^:
$:
\<,\b:
\>,\b
分组:
\(\):
\1,\2,\3....
grep: 使用基本正则表达式定义的模式来过滤文本的命令:
-i:忽略带大写
-v:反向搜索
-o:只显示匹配到的字符串
--color:显色
-e:使用扩展正则表达式
-a #: 表示某一行匹配到了,其后面的#行也显示出来,每一组用 -- 分隔
-b #: 表示某一行匹配到了,其前面的#行也显示出来,每一组用 -- 分隔
-c #:表示某一行匹配到了,其上下的#行也显示出来,每一组用 -- 分隔
扩展的正则表达式:
字符匹配:
. :任意单个字符
[]:指定范围内的单个字符
[^]: 指定范围外的单个字符
次数匹配:
*:匹配其前字符匹配任意次
?:匹配其前字符0次或1次
+:匹配其前字符至少1次
{m,n}:至少m次,至多n次 (不需要再使用 \ )
位置锚定:
^: 行首
$: 行尾
\<,\b: 词首
\>,\b:词尾
分组:
(): 分组
\1,\2,\3....
或者
|:or
group -e = egroup
1-255的数字正则表达式:
\<[1-9|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]]\>
ipv4:
5类: abcde 类
a:1-127
b:128-191
c:192-233
匹配ip
fgrep : 不支持正则表达式( 执行速度快)
上一篇: 数据库设计-需求分析
推荐阅读
-
百度影音下载或观看时缓冲不了的原因及解决方法
-
四川二本压线的公办大学及分数线-理科二本压线生填报学校(2021高考)
-
myeclipse10.0怎么激活? myeclipse10.0及以上版本的激活教程
-
个人所得税app如何下载注册?个人所得税APP下载及注册步骤
-
恶意程序Korplug利用IE浏览器漏洞盗取有价值信息及用户隐私
-
Windows 64 位 mysql 5.7以上版本包解压中没有data目录和my-default.ini及服务无法启动的快速解决办法(问题小结)
-
个人所得税app常见的五大问题及解决方法介绍
-
2021年考军校眼睛近视可以吗?附不限视力的军校及专业
-
搜狐影音及搜狐影音中的一些小技巧使用介绍
-
python3.4+pycharm 环境安装及使用方法