正则表达式

grep命令:
文本过滤(按行过滤)
参数
  -v 取反
-i 忽略大小写
-n 显示行号
-c 统计匹配行数
-q 静默执行(不显示执行结果)
-o 仅显示搜索到的字符串
-A #(数字) 包含关键字的后续几行
-B #(数字) 包含关键字的前面几行
-C #(数字) 包含关键字的前后几行
-w 匹配整个单词
-E 相当于fgrep
正则表达式
REGEXP匹配字符串
正则表达式元字符
\ 转义字符
. 匹配任意单个字符
[] 匹配指定范围外的任意单个字符
[^] 匹配除了[]内单一字符
[:alnum:] 字母和数字
[:alpha:]A-Z,a-z 代表任何英文大小写字符
[:upper:]A-Z 大写字母
[:lower:]a-z 小写字母
[:blank:] 空白字符
[:space:] 水平和垂直的空白字符
[:cntrl:] 不可打印的控制字符(退格,删除,警铃)
[:digit:] 十进制数字
[:xdigit:] 十六进制数字
[:graph:] 可打印的非空白字符
[:print:] 可打印的空白字符
[:punct:] 标点符号
正则表达式位置锚定:定位出现的位置
^ 行首锚定,用于模式的最左侧
$ 行尾锚定,用于模式的最右侧
^PATTERN$ 用于模式匹配整行
^$空行 空行
^[[:space;]]*$ 空白行
\<或\b 词首锚定,用于单词模式的左侧
\>或\b 词尾锚定,用于单词模式的右侧
\<PATTERN\> 匹配整个单词
正则表达式分组
\(\)将一个或多个字符捆绑在一起,当作一个整体进行处理,如\(root\)\+
分组括号中的模式匹配到的内容会被正则表达式引擎记录于内部的变量中,
这些变量的命名方式为:\1,\2,\3,..
\1 表示从左侧起第一个左括号以及为止匹配右括号之间的模式所匹配到 的字符
示例: \(string1\+\(string2\)*\)
\1 : string1\+\(string2\)*
\2 : string2
后向引用:引用前面的分组括号中模式所匹配字符,而非模式本身
或者\|
示例 : a\|b: a或b C\|cat: C或cat \(C\|c\)at:Cat或cat
正则表达式次数匹配
.*: 匹配前面字符任意次
\?: 0或1次
\+: 1次或多次
\{n\}: 匹配前面的字符n次
\{m,n\} 匹配前面的字符至少m次,至多n次
\{,n\} 匹配前面的字符至多n次
\{n,\} 匹配前面的字符至少n次
egrep及扩展的正则表达式
egrep命令
egrep=grep-E
扩展正则表达式
扩展正则表达式元字符
. 匹配任意单个字符
[] 匹配指定范围外的任意单个字符
[^] 字母和数字
扩展正则表达式位置锚定
^ 行首锚定,用于模式的最左侧
$ 行尾锚定,用于模式的最右侧
\<或\b 词首锚定,用于单词模式的左侧
\>或\b 词尾锚定,用于单词模式的右侧
扩展正则表达式分组
()
后向引用:\1,\2,…
例 : a|b: a或b C|cat: C或cat (C|c)at:Cat或cat
扩展正则表达式次数匹配
*: 匹配前面字符任意次
?: 0或1次
+: 1次或多次
{m}: 匹配m次
{m,n}: 至少m次,至多n次

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/93828

(0)
简单不简单简单不简单
上一篇 2018-03-30
下一篇 2018-03-30

相关推荐

  • 简述at和crontab命令

    制定 每周三凌晨三、五点10分执行某个脚本,输出当前时间,时间格式为 2017-12-28 10:00:00

    Linux笔记 2018-06-07
  • Homework_week3

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。        who | cut -d’ ‘ -f1 | uniq 2、取出最后登录到当前系统的用户的相关信息。       who | tail -1 3、取出当前系统上被用户当作其默认shell的最多的那个shell。       cut …

    Linux笔记 2018-06-26
  • linux 文本处理三剑客

    grep 作用:文本搜索工具,根据用户指定的“模式”对目标文本逐行进行匹配检查;打印匹配到的行。 模式:由正则表达式字符及文本符所编写的过滤条件 grep  命令选项: 正则表达式: 基本正则表达式元字符      字符匹配: 正则表达式: 正则表达式: 正则表达式: 示例:a\|b: a或b    C\|cat :C或cat         \(C\|c\…

    Linux笔记 2018-04-15
  • 主从DNS acl问题

    问题:从DNS服务器acl 验证时未生效。

    Linux笔记 2018-07-12
  • LINUX防火墙

    防火墙的分类 systemctl stop firewalld.service :service iptables stop 关闭本机的防火墙并不意味者将防火墙禁用了,只是禁用系统默认的防火墙设置,自己可以再重新配置防火墙策略。   主机防火墙:服务范围为当前主机 网络防火墙:服务范围为防火墙一侧的局域网 硬件防火墙:在专用硬件级别实现部分功能的防…

    Linux笔记 2018-06-28