0

0

在Linux中使用grep正则表达式入门

霞舞

霞舞

发布时间:2025-01-05 13:27:13

|

866人浏览过

|

来源于Linux就该这么学

转载

正则表达式是一种符号表示法,用于识别文本模式。linux处理正则表达式的主要程序是grep。grep搜索与正则表达式匹配的行,并将结果输送至标准输出。

grep匹配模式

grep按下述方式接受选项和参数(其中,regex表示正则表达式)

grep [options] regex [files]

其中options主要为下表:


选项	含义	功能描述
-i	ignore case	忽略大小写
-v	invert match	不匹配匹配的
-l	file-with-match	输出匹配的文件名
-L	file-without-match	输出不匹配的文件名
-c	count	输出匹配的数目(行数)
-n	number	输出匹配行的同时在前面加上文件名及在文件名中的行数
-h	no-filename	抑制文件名的输出

举例说明

假设有三个文件del1、del2、del3三个文件的内容如下
在Linux中使用grep正则表达式入门

PicWish
PicWish

推荐!专业的AI抠图修图,支持格式转化

下载

例子

在Linux中使用grep正则表达式入门

特殊字符

符号	含义	                举例
^	开始标记	                "^abc"满足的例子abc、abcd
^	非(在[]内)	        "[^abc]"满足的例子:ddd、mpd
$	结束标记           	”abc$”满足的例子abc、mmabc
.	任意字符          	"a.c"满足的例子abc、fapcc
\< 匹配单词开始       	"\	匹配单词结束        	"abc\>"满足的例子abc、pmrabc
|	或	                "AAA|BBB"满足的例子AAA、BBBpp
范围
符号	含义	                                                         举例
?	匹配前一个字符0或1次	                                       "abc?"满足的例子ab、mabcd
*	匹配前一个字符≥0次	                                       "abc*"满足的例子abbb、abcdk
+	匹配前一个字符≥1次	                                       "abc+"满足的例子abcd、abcccdd
{}	{m}、{m,n}、{m,}、{,n}分别为匹配前一个字符m次、m到n次、≥m次、≤n次  "abc\{3,5\}"满足的例子abcccc、abcccccc
[]	[]内如果不是范围,选其一;是范围的话,范围内选其一	               "m[abc]p"满足的例子acpd;m[1-9]p满足的例子m8pp
()	将候选的所有元素放在()内,用|隔开	                               "a(1|2|3)bc"满足的例子a1bc、mba3bcd

注意:{}在郑则表达式中需要转移,而{}()不需要。

注意理解{}范围的例子:
在Linux中使用grep正则表达式入门

标准字符类

字符类	释义
[:alnum:]	字母和数字,与[A-Za-z0-9]等价
[:word:]	[:alnum:]加上下划线_
[:alpa:]	字母,与[A-Za-z]等价
[:digit:]	数字,与[0-9]等价
[:xdigit:]	十六进制字符,与[0-9A-Fa-f等价]
[:blank:]	空格和制表符
[:graph:]	可见字符,靠扩33~126
[:lower:]	小写字母
[:upper:]	大写字母
[:print:]	可打印字符
[:space:]	空白字符,等价于[\t\r\n\v\f]
[:punct:]	标点符号
[:cntrl:]	ASCII控制码,包括字符0~31以及127

相关专题

更多
js正则表达式
js正则表达式

php中文网为大家提供各种js正则表达式语法大全以及各种js正则表达式使用的方法,还有更多js正则表达式的相关文章、相关下载、相关课程,供大家免费下载体验。

505

2023.06.20

正则表达式不包含
正则表达式不包含

正则表达式,又称规则表达式,,是一种文本模式,包括普通字符和特殊字符,是计算机科学的一个概念。正则表达式使用单个字符串来描述、匹配一系列匹配某个句法规则的字符串,通常被用来检索、替换那些符合某个模式的文本。php中文网给大家带来了有关正则表达式的相关教程以及文章,希望对大家能有所帮助。

245

2023.07.05

java正则表达式语法
java正则表达式语法

java正则表达式语法是一种模式匹配工具,它非常有用,可以在处理文本和字符串时快速地查找、替换、验证和提取特定的模式和数据。本专题提供java正则表达式语法的相关文章、下载和专题,供大家免费下载体验。

722

2023.07.05

java正则表达式匹配字符串
java正则表达式匹配字符串

在Java中,我们可以使用正则表达式来匹配字符串。本专题为大家带来java正则表达式匹配字符串的相关内容,帮助大家解决问题。

209

2023.08.11

正则表达式空格
正则表达式空格

正则表达式空格可以用“s”来表示,它是一个特殊的元字符,用于匹配任意空白字符,包括空格、制表符、换行符等。本专题为大家提供正则表达式相关的文章、下载、课程内容,供大家免费下载体验。

343

2023.08.31

Python爬虫获取数据的方法
Python爬虫获取数据的方法

Python爬虫可以通过请求库发送HTTP请求、解析库解析HTML、正则表达式提取数据,或使用数据抓取框架来获取数据。更多关于Python爬虫相关知识。详情阅读本专题下面的文章。php中文网欢迎大家前来学习。

293

2023.11.13

正则表达式空格如何表示
正则表达式空格如何表示

正则表达式空格可以用“s”来表示,它是一个特殊的元字符,用于匹配任意空白字符,包括空格、制表符、换行符等。想了解更多正则表达式空格怎么表示的内容,可以访问下面的文章。

228

2023.11.17

正则表达式中如何匹配数字
正则表达式中如何匹配数字

正则表达式中可以通过匹配单个数字、匹配多个数字、匹配固定长度的数字、匹配整数和小数、匹配负数和匹配科学计数法表示的数字的方法匹配数字。更多关于正则表达式的相关知识详情请看本专题下面的文章。php中文网欢迎大家前来学习。

524

2023.12.06

苹果官网入口直接访问
苹果官网入口直接访问

苹果官网直接访问入口是https://www.apple.com/cn/,该页面具备0.8秒首屏渲染、HTTP/3与Brotli加速、WebP+AVIF双格式图片、免登录浏览全参数等特性。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

10

2025.12.24

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
jQuery  红蓝两方投票功能实战教程
jQuery 红蓝两方投票功能实战教程

共8课时 | 2.3万人学习

传智播客Swift基础视频教程
传智播客Swift基础视频教程

共40课时 | 7.8万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号