正则表达式详细用法

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/95392

赞 (0)
简单不简单简单不简单
上一篇 2018-04-08 15:07
下一篇 2018-04-08 15:53

相关推荐

  • bash的工作特性

    bash特性:命令执行状态返回值 bash命令的执行状态分为两种:1. 成功,状态返回值为0。2. 失败,状态返回值为1-255。bash使用特殊变量$?保存最近一条命令的执行状态结果: [Azuth@azuth ~]$ id root &>/dev/null[Azuth@azuth ~]$ echo $?0[Azuth@azuth ~]$ i…

    Linux笔记 2018-05-20
  • 第二周总结

    反向单引号 ` `:执行能力强,可以执行命令 [等价于$()]单引号 ‘ ’:只显示字符双引号 “ ”:识别变量,不识别命令花括号{ }: 里面内容互相组合 打印重复字符串的简化形式echo file{1,3,5} 结果为:file1 file3 file5rm -f file{1,3,5} 删除file1 file3 file5echo file{1..1…

    Linux笔记 2018-07-29
  • Linux第一周命令总结

    hostname  完整主机名  cat +文件路径 可查看文件信息 cat /etc/centos-release 查看文件  版本的名称、发行时间所有shell cat/etc/shells  显示当前系统使用的 lsd_release -a  命令  查看版本 /etc/centos-release 是文本文件  cat是查看文本的命令 uname-r…

    2018-07-22
  • 第五天作业

    shell 脚本编写[xhm@localhost ~]$ cat test.sh#!/bin/bash XXXXecho “welcome to beijing”ls -d /etc/[pP]*echo “hell -etss”ls -d /var/* | tr ‘a-z’ &#8216…

    Linux笔记 2018-05-27
  • Week01

    第一周作业

    2018-05-12
  • Linux基础命令

    Linux基础命令简要介绍

    2018-03-30