四月二十六日,正则表达式

在学校学的正则表达式,在这里简单写一下。

 

^           行首以此开始

                  
$           行尾以此结束


.             除换行符 \n之外的任意一个字符


*            匹配前面的子表达式>=0个字符


[ ]          组中一个字符


[^]         匹配一个不在范围内的字符


\             转义字符  '。'\n' 匹配换行符。序列 '\\' 匹配 "\",而 '\(' 则匹配 "("

 

\w          字符和数字

\W         非字符和数字


\b           单词分界线


\s           空白字符空格、制表符、换页符


\S           非空白字符

结合  grep 语句来一起实现  -i 不区分大小写 -c 只输出匹配的行数  -E 使用扩展正则表达式

 

1.匹配所有以le开头的字符串
grep '\<le' ch10-love.txt
2.匹配所有以le结束的字符串
grep 'le\>' ch10-love.txt
3.匹配所有第一个字符是s,紧跟四个字符,然后是e
grep '\<s....e' ch10-love.txt
4.匹配所有0个或多个空格,空格后跟着sample
grep '\s*sample' ch10-love.txt
5.匹配所有包含Sample或sample的行
grep '[Ss]ample'  ch10-love.txt
6.匹配第一个字符是从A-Z中间的一个,后面跟着sample
grep '\<[A-Z]sample' ch10-love.txt
7.匹配第一个字符不是从A-Z中间的一个,后面跟着sample
grep '\<[^A-Z]sample' ch10-love.txt
8.匹配sample.(通常点表示任何字符,这里用\转义元字符点)
grep 'sample\.' ch10-love.txt

9.匹配以love单词开头的行
grep ^love ch10-love.txt

10.匹配以love单词结束的行
grep love$ ch10-love.txt


15.匹配字母l后紧跟0个或多个文字或数字字符,然后是e
grep "l\w*e" ch10-love.txt
16.匹配love后面是一个非单词字符,如标点符号
grep "love\W" ch10-love.txt
17.仅仅匹配单词love
grep "\blove\b" ch10-love.txt


22.将10-1中you替换成888
:%s/\<you\>/888/g


26..找到sample.这个字符,注意字符.
 grep "sample\." ch10-love.txt
27.找到所有love,不区分大小写
grep "[Ll]ove" ch10-love.txt

 

29.匹配第一个字符是从A-Z中间的一个,后面跟着sample
grep "[A-Z]sample" 102

30.匹配所有0个或多个空格,空格后跟着sample
grep "\s*sample" 102
*31.显示当前目录中,有10这两个字符的文件
 ls | grep "10"

*32.某个文件中含有 boot 的字眼,而这个文件在 /etc/ 底下,我要如何找到?
ls /etc |grep "boot"
33.在 /etc 底下,只要含有 XYZ 三个字符的任何一个字符的那一行就列出来,要怎样进行
ls /etc | grep [XYZ]

34.找出在 /etc 底下,档案内容含有 * 的文件名称?

ls /etc | grep "\*"

 

 

 

 


 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值