×

grep正则表达式

grep正则表达式(grep语法)

admin admin 发表于2024-08-17 10:59:49 浏览5 评论0

抢沙发发表评论

“grep正则表达式”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看grep正则表达式(grep语法)!

本文目录

grep语法

grep指令用于查找内容包含指定的范本样式的文件,如果发现某文件的内容符合所指定的范本样式,预设grep指令会把含有范本样式的那一列显示出来。若不指定任何文件名称,或是给予的文件名为-,则grep指令会从标准输入设备读取数据。

语法

grep

参数

-a或--text:不要忽视二进制的数据。

-A《显示行数》或--after-context=《显示行数》:除了显示符合范本样式的那一列之外,并显示该行之后的内容。

-b或--byte-offset:在显示符合样式的那一行之前,标示出该行第一个字符的编号。

-B《显示行数》或--before-context=《显示行数》:除了显示符合样式的那一行之外,并显示该行之前的内容。

-c或--conunt:计算符合样式的列数。

-C《显示行数》或--context=《显示行数》或-《显示行数》:除了显示符合样式的那一行之外,并显示该行之前后的内容。

-d《动作》或--directories=《动作》:当指定要查找的是目录而非文件时,必须使用这项参数,否则grep指令将回报信息并停止动作。

-e《范本样式》或--regexp=《范本样式》:指定字符串做为查找文件内容的样式。

-E或--extended-regexp:将样式为延伸的正则表达式来使用。

-f《规则文件》或--file=《规则文件》:指定规则文件,其内容含有一个或多个规则样式,让grep查找符合规则条件的文件内容,格式为每行一个规则样式。

-F或--fixed-regexp:将样式视为固定字符串的列表。

-G或--basic-regexp:将样式视为普通的表示法来使用。

-h或--no-filename:在显示符合样式的那一行之前,不标示该行所属的文件名称。

-H或--with-filename:在显示符合样式的那一行之前,表示该行所属的文件名称。

-i或--ignore-case:忽略字符大小写的差别。

-l或--file-with-matches:列出文件内容符合指定的样式的文件名称。

-L或--files-without-match:列出文件内容不符合指定的样式的文件名称。

-n或--line-number:在显示符合样式的那一行之前,标示出该行的列数编号。

-o或--only-matching:只显示匹配PATTERN部分。

-q或--quiet或--silent:不显示任何信息。

-r或--recursive:此参数的效果和指定"-d recurse"参数相同。

-s或--no-messages:不显示错误信息。

-v或--invert-match:显示不包含匹配文本的所有行。

-V或--version:显示版本信息。

-w或--word-regexp:只显示全字符合的列。

-x--line-regexp:只显示全列符合的列。

-y:此参数的效果和指定"-i"参数相同。

GREP缩写是什么含义它的五大功能是什么

GREP全称是:Globally search a Regular Expression and Print。

这是一种非常强大的文本搜索工具,它能使用特定模式匹配搜索文本(包括正则表达式),并且默认输出匹配行。它的使用权限是所有用户。

GREP的工作方式是在一个或多个文件中搜索字符串模板。如果模板包括空格,那么就要被引用,模板后的所有字符串被看作文件名。搜索的结果被送到屏幕,不影响原文件内容。

GREP的五个功能分别为:(1)多个文件查询  grep "sort" *.doc       #见文件名的匹配。

(2)行匹配:输出匹配行的计数  grep -c "48" data.doc   #输出文档中含有48字符的行数。

(3)显示匹配行和行数  grep -n "48" data.doc       #显示所有匹配48的行和行号。

(4)显示非匹配的行  grep -vn "48" data.doc      #输出所有不包含48的行。

(5)大小写敏感  grep -i "ab" data.doc       #输出所有含有ab或Ab的字符串的行。

扩展资料

正则表达式,又称规则表达式。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。

许多程序设计语言都支持利用正则表达式进行字符串操作。例如,在Perl中就内建了一个功能强大的正则表达式引擎。正则表达式这个概念最初是由Unix中的工具软件(例如sed和grep)普及开的。正则表达式通常缩写成“regex”,单数有regexp、regex,复数有regexps、regexes、regexen。

正则表达式的特点是:

1. 灵活性、逻辑性和功能性非常强。

2. 可以迅速地用极简单的方式达到字符串的复杂控制。

3. 对于刚接触的人来说,比较晦涩难懂。

由于正则表达式主要应用对象是文本,因此它在各种文本器场合都有应用,小到著名器EditPlus,大到Microsoft Word、Visual Studio等大型器,都可以使用正则表达式来处理文本内容。

参考资料:百度百科-GREP

grep命令详解

linux grep命令:

《p fc05="" fc11="" nbw-blog="" ztag="" js-fs2"=""》

1、作用

Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来。grep全称是Global Regular Expression print,表示全局正则表达式版本,它的使用权限是所有用户。

2、格式

grep

3、主要参数

主要参数:

-c:只输出匹配行的计数。

-I:不区分大 小写(只适用于单字符)。

-h:查询多文件时不显示文件名。

-l:查询多文件时只输出包含匹配字符的文件名。

-n:显示匹配行及 行号。

-s:不显示不存在或无匹配文本的错误信息。

-v:显示不包含匹配文本的所有行。

pattern正则表达式主要参数:

\: 忽略正则表达式中特殊字符的原有含义。

^:匹配正则表达式的开始行。

$: 匹配正则表达式的结束行。

\《:从匹配正则表达 式的行开始。

\》:到匹配正则表达式的行结束。

即A符合要求 。

,即A、B、C一直到Z都符合要求 。

。:所有的单个字符。

* :有字符,长度可以为0。

4.grep命令使用简单实例

$ grep ‘test’ d*

显示所有以d开头的文件中包含 test的行。

$ grep ‘test’ aa bb cc

显示在aa,bb,cc文件中匹配test的行。

$ grep ‘\{5\}’ aa

显示所有包含每个字符串至少有5个连续小写字符的字符串的行。

$ grep ‘w\(es\)t.*\1′ aa

扩展资料:

egrep 命令,搜索文件获得模式。egrep 命令会在输入文件(缺省值为标准输入)中搜索与Pattern 参数指定的模式相匹配的行。这些模式是完整的正则表达式就像在 ed 命令中的那样(除了 \ (反斜杠)和 \\ (双反斜杠))。下列规则也应用于 egrep 命令:

一个正则表达式后面带一个 + (加号)会匹配一个或多个的正则表达式,一个正则表达式后面带一个 ? (问号)会匹配零个或一个该正则表达式,由 | (竖线)或者换行符隔开的多个正则表达式会匹配与任何一个正则表达式所匹配的字符串。

一个正则表达式可以被包括在“()”(括弧)中进行分组,换行符将不会被正则表达式匹配,运算符的优先顺序是 , *, ?, +, 合并, | 和换行符。

注意: egrep 命令与 grep 命令带 -E 标志是一样的,除了错误消息和使用消息不同以及 -s 标志的功能不同之外,egrep 命令会显示包含该匹配行的文件,如果指定了多于一个 File 参数的话。

参考资料:百度百科—GREP

参考资料:百度百科—linux命令

grep正则表达式如何匹配固定字母和符号组合中的第一个字母部分

/^+$//^*$/JavaScript语言解释:+表示匹配前面的子表达式一次或多次 *表示匹配前面的子表达式零次或多次示例function isDigitLetter(s){var patrn=/^$/;if (!patrn.exec(s)) return false;return true;}

请简述基础正则表达式grep高级参数的使用

常用参数:-v排除匹配内容,-e支持扩展的正则表达式,-i忽略大小写,-o输出匹配的内容(只是一块,不是行),--color=auto 匹配内容显示颜色,-n 在行首显示行号。特殊字符注意事项:^(尖括号)word :表示搜索以word开头的内容。word$ 表示搜索以word结尾的内容。^$ 表示的是空行,不是空格。. 代表且只能代表任意一个字符。非正则表达式其他功能(当前目录,加载文件)\ 转义字符,让有着特殊身份意义的字符,脱掉马甲,还原原型。例如\.只表示原始小数点意义。* 表示重复0个或多个前面的一个字符。不代表所有。.* 表示匹配所有的字符。^.*表示以任意字符开头。。 ^在中括号里面是非的意思,不包含之意。意思就是不包含a或b或c的行。{n,m} 表示重复n到m次前一个字符。{n}至少n次,多了不限。{n}N次,{,m}至多m次,少了不限。注:使用grep或sed要对{}转义。即\{\}.egrep就不需要转义了。 如果有什么不懂的话可以去看看《Linux就该这么学》这本书,非常适合新手学习Linux。

正则表达式中grep ’oooooo*’什么意思

星号在正则表达式中的意思是零个或多个字符,比如 o* 就表示零个或多个o 其中的零个字符就是没有字符的意思.所以你如果想过滤出八个o,就应该这样写grep ’ooooooooo*’ t.txt 或者grep ’oooooooo+’ t.txt (其中的o+表示一个或一个以上的o)grep ’abcabcc*’ t.txt 匹配abcabc或者abcabcc,abcabccc等这样的字符串grep ’ababc*’ t.txt 匹配abab或者ababc,ababcc等这样的字符串

正则表达式:grep “^[[:space :]]*$” 表示什么

逐个进行解析如下:^: 表示字符串开始。 : 表示匹配空格。*: 表任意字符。* : 表示任意个空格。$: 表示字符串结束。综上所示,就是匹配N个空格,所以就是空白行

如果你还想了解更多这方面的信息,记得收藏关注本站。