深入浅析正则表达式与通配符

1.特殊符号

''     所见即所得
""     特殊符号会被解析运行
``     == $() 先运行里面的命令 把结果留下
>     重定向符号        先清空文件的内容 然后追加文件的最后
>>    追加重定向        追加文件的最后
2>    错误重定向        只有错误的信息 才会通过这个漏洞进入文件中
2>>   错误追加重定向
~     当前用户的家目录
!     查找并运行历史命令
!awk  包含awk的命令 最近的一条运行
      history |grep awk
#     注释
      root用户的命令提示符
$     取出变量的内容
      awk $取某一列的内容
   普通用户的命令提示符
*     所有 任何东西
\     撬棍  转义字符
&&    前一个命令执行成功然后在执行后一个命令
      ifdown eth0 && ifup eth0

||    前一个命令支持失败了再执行后面的命令

2.通配符

通配符是用来查找文件的。

2.1. 所有,任意*

2.2.{} 生成序列

3.正则表达式

3.1.什么是正则?为何使用它?

通过符号表示文字内容。

提高效率,省事。

3.2.使用正则的时候注意事项

正则表达式是按照行进行处理的

禁止使用中文符号

给grep和egrep配置别名

cat >>/etc/profile<<EOF
alias grep='grep --color=auto'
alias egrep='egrep --color=auto'
EOF
source /etc/profile

3.3.正则表达式与通配符区别

用途                             匹配的内容                         支持的命令

通配符---用来匹配查找文件名      *.txt *.log 以.txt .log结尾的文件  大部分命令都可以使用

正则-----在文件中匹配查找内容    包含abc的行                     Linux三剑客

3.4.正则表达式分类

基础正则       ^ $ . * []  [^]    basic      regular expression BRE   grep           sed    awk

扩展正则       | +   {} () ?      extended   regular expression ERE   grep -E/egrep  sed -r awk

3.5.正则表达式总结

连续出现(重复)

*        >=0
            +        >=1
            ?        0 1
            {n,m}    >=n  <=m
            {n}      ==n
     其他
            .        任意一个字符
            [abc]    一个整体 相当于是一个字符
                     [a-z] [0-9] [A-Z]
            [^abc]   排除
            |        或者
            ()       后向引用  反向引用  先保护再使用
            ^
            $
   .*       所有
   ^$       空行

3.6.基础正则与扩展正则区别

grep                    egrep === grep -E
sed                     sed -r
awk                     awk

到此这篇关于正则表达式与通配符及区别介绍的文章就介绍到这了,更多相关正则表达式 通配符内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • mysql正则表达式 LIKE 通配符

    扩展正则表达式的一些字符是: "."匹配任何单个的字符. 一个字符类"[...]"匹配在方括号内的任何字符.例如,"[abc]"匹配"a"."b"或"c".为了命名字符的一个范围,使用一个"-"."[a-z]"匹配任何小写字母,而"[0-9]"匹配任何数字. " * "匹配零个或多个在它前面的东西.例如,&q

  • linux下的通配符与正则表达式

    通配符 *  任意字符,可重复多次     ? 任意字符,重复一次     [] 代表一个字符 举例: [a,b,c] 表示abc中任意一个 通配符的作用是用来匹配文件名的 正则表达式 正则表达式是在文件中匹配符合条件的字符串的 ls find cp是不支持正则表达式的 但是grep awk sed支持正则表达式 [root@hadoop-bigdata01 test]# touch aa [root@hadoop-bigdata01 test]# touch aab aabb [root@ha

  • 深入浅析正则表达式与通配符

    1.特殊符号 ''     所见即所得 ""     特殊符号会被解析运行 ``     == $() 先运行里面的命令 把结果留下 >     重定向符号        先清空文件的内容 然后追加文件的最后 >>    追加重定向        追加文件的最后 2>    错误重定向        只有错误的信息 才会通过这个漏洞进入文件中 2>>   错误追加重定向 ~     当前用户的家目录 !     查找并运行历史命令 !awk  包含a

  • 浅析正则表达式中的lastIndex以及预查

    依次写出下列输出内容. var reg1 = /a/; var reg2 = /a/g; console.log(reg1.test('abcabc')); // true console.log(reg1.test('abcabc')); // true console.log(reg1.test('abcabc')); // true console.log(reg1.test('abcabc')); // true console.log(reg2.test('abcabc')); //

  • 深入浅析正则表达式re模块(部分)

    正则表达式: 官方定义:正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符.及这些特定字符的组合,组成一个"规则字符串",这个"规则字符串"用来表达对字符串的一种过滤逻辑. ​ 什么是正则表达式: 一套规则 - 匹配字符串的 ​ 谈到正则,就只和字符串相关了.我们要考虑的是在同一个位置上可以出现的字符的范围. ​ 正则表达式能做什么: •1.检测一个输入的字符串是否合法 -- web开发项目 表单验证 ◦用户输入一个内容的时候,我们要提前做检测

  • 浅析正则表达式-替换原则(.NET) 图文

    一.开篇 最近经常用到替换的东西所以就出来整理下,这里要分享的是正则表达式里面的替换原则,首先要声明的是这里提及到的替换原则是.NET里面的正则表达式的替换原则.先看一下替换的定义替换是只能在替换模式中识别的语言元素. 它们使用正则表达式模式定义全部或部分用于替换输入字符串中的匹配文本的文本. 替换模式可以包含一个或多个替换以及本文字符.其实个人总结的替换的大致是这样的,替换的内容永远都是原文本的内容,通过正则表达式匹配出来文本,来通过组名或者组号来进行对原文本的替换,替换的位置是用正则表达式匹

  • 浅析正则表达式

    所谓的正则表达式,就是用一类元字符(不表示本身意义,而表示统配或其他意义),组 合其他字符所编数出来的,能够匹配符合条件的字符.  正则表达式有基本正则表达式和扩展正则表达式两大类,  下面给大家介绍一下基本正则表达式和扩展正则表达式的一些常用的字符, 基本正则表达式: ^        锚定行首的符合条件的内容  $        锚定行尾的符合条件的内容  ^$       表示空白行  .        匹配任意单个字符  *        匹配进挨在其前面的字符任意次  .*      

  • 浅析正则表达式 元字符和普通字符

    要想学会正则表达式,理解元字符和普通字符是一个必须攻克的难关.不用刻意记.下面小编给大家带来了正则表达式 元字符和普通字符的相关知识,一起看看吧. 根据正则表达式语法规则,正则表达式的匹配模式是由一系列的字符构成的. 一.普通字符: 大多数的字符仅能够描述它们本身,这些字符称作普通字符,例如所有的字母和数字. 也就是说普通字符只能够匹配字符串中与它们相同的字符. 二.元字符: 由于普通字符只能匹配与自身相同的字符,那么正则表达式的灵活性和强大的匹配功能就不能完全展现,于是正则表达式中规定了一系列

  • 深入浅析正则表达式中的\B和\b

    对于正则表达式的中\B和\b 有些地方会出现弄不懂的情况 或许你看了下面这篇博客 你就能够对\B和\b认识加深了 根据查看API可以知道 \B和\b都是边界匹配符 先说说\b这个单词边界吧!竟然想了解 首先必须清楚什么叫单词边界!我们可以以\b为分割来探究一下 单词边界 import java.util.regex.Matcher; import java.util.regex.Pattern; public class matcher1 { public static void main(St

  • 深入浅析正则表达式 捕获组

    捕获组(capturing group)是正则表达式里比较常用,也是比较重要的概念,我个人觉得掌握这部分的知识是非常重要的. 这篇文章内容不会很深入,但是尽量做到简单易懂又全面.接下来的内容主要是围绕以下7个点: 1: () 捕获组 2: (?:) non capturing group 3: (?=) positive lookahead 4: (?!) negative lookahead 5: (?<=) positive lookbehind 6: (?<!) negative loo

随机推荐