bash 中用于grep的正则表达式

正则表达式是一类用于匹配文本的表达方式,常用于grep命令中表达检索条件。其实就是相当于你在用百度搜索时规定一些高级要求,例如你想找百度一个叫做詹姆斯的人的照片,你会发现出来一大堆骑士队的詹姆斯,这时候你就需要高级要求:搜索除了勒布朗之外的詹姆斯。而正则表达式就是用在这里的。

学习正则表达式简直就是非人的工作,因为它根本就不是按照正常人的思维工作的,所以要有心理准备。

我在刚开始学习时看了很多正则表达式的用法,后来发现,原来在不同的环境中正则表达式是不同的,这其中就体现在某些词需不需要转义符\以及元字符集,所以在这里将bash中用于grep的正则表达式相关内容整合一下.

文本搜索工具grep基本用法

功能:输入文件的每一行中查找字符串。

基本用法:

grep [-acinv] [–color=auto] [-A n] [-B n] ‘搜寻字符串' 文件名

参数说明:

-a:将二进制文档以文本方式处理

-c:显示匹配次数

-i:忽略大小写差异

-n:在行首显示行号

-A:After的意思,显示匹配字符串后n行的数据

-B:before的意思,显示匹配字符串前n行的数据

-v:显示没有匹配行-A:After的意思,显示匹配部分之后n行-B:before的意思,显示匹配部分之前n行

–color:以特定颜色高亮显示匹配关键字

文本搜索工具grep正则表达式元字符集

^

锚定行的开始 如:'^grep'匹配所有以grep开头的行。

$

锚定行的结束 如:'grep$'匹配所有以grep结尾的行。

.

匹配一个非换行符的字符 如:'gr.p'匹配gr后接一个任意字符,然后是p。

*

匹配零个或多个先前字符 如:'grep'匹配所有一个或多个空格后紧跟grep的行。 .一起用代表任意字符。

[]

匹配一个指定范围内的字符,如'[Gg]rep'匹配Grep和grep。

[^]

匹配一个不在指定范围内的字符,如:'[^A-FH-Z]rep'匹配不包含A-R和T-Z的一个字母开头,紧跟rep的行。

(..)

标记匹配字符,如'(love)',love被标记为1。

\<

锚定单词的开始,如:'\

以上所述是小编给大家介绍的bash 中的正则表达式,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

(0)

相关推荐

  • linux grep正则表达式与grep用法详解

    需要大家牢记:正则表达式与通配符不一样,它们表示的含义并不相同 正则表达式只是字符串的一种描述,只有和支持正则表达式的工具相结合才能进行字符串处理.本文以grep为例来讲解正则表达式. grep命令 功能:输入文件的每一行中查找字符串. 基本用法: grep [-acinv] [--color=auto] [-A n] [-B n] '搜寻字符串' 文件名 参数说明: -a:将二进制文档以文本方式处理 -c:显示匹配次数 -i:忽略大小写差异 -n:在行首显示行号 -A:After的意思,显示匹

  • Shell正则表达式之grep、sed、awk实操笔记

    最近一直在研究shell脚本这块,刚好闲下来整了下自己手头上比较好的资料中的一些范例,以下是我整理的鸟哥私房菜里面正则表达式里面比较基础的一些语法详解,适合新手查阅. 首先先复制一段范例: 复制代码 代码如下: # vi regular_express.txt ------------------------------- "Open Source" is a good mechanism to develop programs. apple is my favorite food.

  • grep用法详解 grep与正则表达式

    正则表达式只是一种表示法,只要工具支持这种表示法, 那么该工具就可以处理正则表达式的字符串.vim.grep.awk .sed 都支持正则表达式,也正是因为由于它们支持正则,才显得它们强大:在以前上班的公司里,由于公司是基于web的服务型网站(nginx),对正则的需求比 较大,所以也花了点时间研究正则,特与大家分享下: 1基础正则表达式 grep 工具,以前介绍过. grep -[acinv] '搜索内容串' filename -a 以文本文件方式搜索 -c 计算找到的符合行的次数 -i 忽略

  • bash 中用于grep的正则表达式

    正则表达式是一类用于匹配文本的表达方式,常用于grep命令中表达检索条件.其实就是相当于你在用百度搜索时规定一些高级要求,例如你想找百度一个叫做詹姆斯的人的照片,你会发现出来一大堆骑士队的詹姆斯,这时候你就需要高级要求:搜索除了勒布朗之外的詹姆斯.而正则表达式就是用在这里的. 学习正则表达式简直就是非人的工作,因为它根本就不是按照正常人的思维工作的,所以要有心理准备. 我在刚开始学习时看了很多正则表达式的用法,后来发现,原来在不同的环境中正则表达式是不同的,这其中就体现在某些词需不需要转义符\以

  • linux grep与正则表达式使用介绍

    grep (缩写来自Globally search a Regular Expression and Print)是一种强大的文本搜索工具,它能使用特定模式匹配(包括正则表达式)搜索文本,并默认输出匹配行.Unix的grep家族包括grep.egrep和fgrep.Windows系统下类似命令FINDSTR. grep egrep fgrep(不支持正则表达式) grep需要标准输入 因此常常位于管道右侧 命令参数: --color=auto: 对匹配到的文本着色显示 -v: 显示不被patte

  • 浅谈Linux grep与正则表达式

    grep简介 grep 是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来.通常grep有三种版本grep.egrep(等同于grep -E)和fgrep.egrep为扩展的grep,fgrep则为快速grep(固定的字符串来对文本进行搜索,不支持正则表达式的引用但是查询极为快速).grep是Linux文本处理三剑客之一. grep使用方式 使用方式: grep [OPTIONS] PATTERN [FILE...] grep [OPTIONS] [-e PATTERN

  • 详解bash中的脚本调试机制

    以调试模式运行脚本 通过bash -x <script>的方式可以在调试模式下运行整个脚本, bash会在在运行前打印出了每一行命令, 而且每行前面用+号表明命令的嵌套层数. > bash -x debug.sh + echo 'First line' First line # 输出结果没有加号 ++ date # 先执行命令替换 两个加号是因为该命令嵌套在echo中 + echo 'Print datetime: Thu 26 Mar 2020 08:21:28 PM CST Done

  • 详解 Shell中的grep命令

    用'grep'搜索文本文件 如果您要在几个文本文件中查找一字符串,可以使用'grep'命令.'grep'在文本中搜索指定的字符串.举个例子:假设您正在'/usr/src/linux/Documentation'目录下搜索带字符串'magic'的文件: $ grep magic /usr/src/linux/Documentation/* sysrq.txt:* How do I enable the magic SysRQ key? sysrq.txt:* How do I use the ma

  • 深入理解Bash中的尖括号(适合初学者)

    前言 Bash 内置了很多诸如 ls.cd.mv 这样的重要的命令,也有很多诸如 grep.awk.sed 这些有用的工具.但除此之外,其实 Bash 中还有很多可以起到胶水作用的标点符号,例如点号(.).逗号(,).括号(<>).引号(")之类.下面我们就来看一下可以用来进行数据转换和转移的尖括号(<>). 转移数据 如果你对其它编程语言有所了解,你会知道尖括号 < 和 > 一般是作为逻辑运算符,用来比较两个值之间的大小关系.如果你还编写 HTML,尖括号作

  • python字符串中匹配数字的正则表达式

    Python 正则表达式简介 正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配. Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式. re 模块使 Python 语言拥有全部的正则表达式功能. compile 函数根据一个模式字符串和可选的标志参数生成一个正则表达式对象.该对象拥有一系列方法用于正则表达式匹配和替换. re 模块也提供了与这些方法功能完全一致的函数,这些函数使用一个模式字符串做为它们的第一个参数. 本章节给大家介

  • 详解bash中的初始化机制

    Bash初始化文件 交互式login shell 在下列情况下,我们可以获得一个login shell: 登录系统时获得的顶层shell,无论是通过本地终端登录,还是通过网络ssh登录.这种情况下获得的login shell是一个交互式shell. 在终端下使用--login选项调用bash,可以获得一个交互式login shell. 在脚本中使用--login选项调用bash(例如:#!/bin/bash --login)可以得到一个非交互式的login shell. 使用su -切换到指定用

  • Java使用正则表达式检索、替换String中特定字符和正则表达式的一切

    引言 String这个对于程序原来说一定是最熟悉不过的,很多时候我们都习惯去使用String的原生方法去完成查找字符串.替换.删除,而正则表达式由于略显苦涩的语法常常被人忽略,其实很多时候使用正则表达式可以提高不少性能和节省资源. 一.正则表达式简述 正则表达式正则表达是Java中比较矛盾的知识点,因为使用起来可以很简单也可以相当地有难度,但是对于字符串操作来说应用得当则事半功倍,字符串查找,搜索,匹配,替换等等,正则表达式无所不能.而所谓正则表达式本质就是一个字符串(这个字符串按照一定的语法和

随机推荐