博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
第四课-第四讲04_04_grep及正则表达式
阅读量:7113 次
发布时间:2019-06-28

本文共 1006 字,大约阅读时间需要 3 分钟。

第四课-第四讲04_04_grep及正则表达式

1.文件检索

grep,egrep,fgrep :Global Research Print 根据某个模式搜索文本,并将符合模式的文本行显示出来。整行显示部分匹配。
模式Pattern:文本字符和正则表达式的元字符组合而成的匹配条件
grep [option] PATTERN file
-i 忽略大小写
--color
-v 反向查找,没有被模式匹配到的显示出来
-o 只显示被模式匹配到的字符串,而不是显示匹配到的行

'' : 单引号,表示强引用

"" : 双引号,表示弱引用

2.正则表达式 Regular Expression REGEXP

正则表达式默认工作在贪婪模式下,尽量多的尽量长的匹配
回忆前面知识:
文件名通配符匹配字符
星号 * : 任意长度任意字符
? : 任意单个字符
[] : 范围内字符

元字符

. 匹配任意单个字符
[] 匹配指定范围内的任意单个字符
匹配指定范围外的任意单个字符
字符集合:[:digit:],[:lower:],[:upper:],[:punct:][:space:],[:alpha:],[:alnum:]
匹配次数:
星号* 匹配其前面的字符任意次
\? 匹配其前面的字符一次或 0 次
{m,n} 匹配其前面的字符最少m次最多n次
位置锚定

^   锚定行首,次字符后面的任意内容必须出现在行首$   锚定行尾,次字符前面的任意内容必须出现在行尾^$  空白行\<(或者\b)  锚定词首,其后面的任意字符必须作为单词首部出现   \>(或者\b)  锚定词尾,其前面的任意字符必须作为单词尾部出现

分组:

() 把小括号内的内容作为一个整体,2条\是转移符
主要作用是实现后向引用:
\1: 引用第一个左括号以及与之对应的右括号所包括的所有内容
\2: 引用第二个左括号以及与之对应的右括号所包括的所有内容
\3: 引用第三个左括号以及与之对应的右括号所包括的所有内容
\4: 引用第四个左括号以及与之对应的右括号所包括的所有内容

He love his lover.

She like her liker.
He like his lover
l..e
grep '(l..e).*\1r' /etc/passwd

转载于:https://blog.51cto.com/13788421/2141237

你可能感兴趣的文章
完成注册
查看>>
java web 跨域
查看>>
python中的一等对象--函数
查看>>
清点人数
查看>>
通过格式输出控制使输出的结果对齐
查看>>
2012年蓝桥杯【初赛试题】 密码发生器
查看>>
别再嘴炮概念了!大数据是硬汉之战,你的肌肉呢?
查看>>
浅谈华为如何实现区块链的安全隐私保护
查看>>
国货当自强!四款好用又免费的国产项目管理工具
查看>>
AT3912 Antennas on Tree
查看>>
symbian s60权限详解
查看>>
一 APPIUM基本理论知识(转)
查看>>
String、StringBuffer和StringBulder
查看>>
mysql 数据类型,字符集
查看>>
电力系统【第1章:电力系统概述】
查看>>
web环境搭建
查看>>
Codeigniter出现Unable to connect to your database server using the provided settings错误解决办法...
查看>>
html相对定位绝对定位
查看>>
YII 框架在 MAC OS下 连接数据库失败 提示 DB connection: SQLSTATE[HY000] [2002]
查看>>
poj 2551 Ones
查看>>