《Linux Shell》笔记之grep与正则表达式(实例总结) 未完待续

本文通过两个实例介绍如何利用grep命令精确匹配指定的URL和合法电子邮件地址。实例一展示了如何查找特定的HTTP和HTTPS URL;实例二则介绍了如何筛选符合规范的电子邮件地址。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. 实例1:找出http://www.baidu.com,或者http://www.baidu.com并且https://www.baidu.com

 

新建文本 example2.grep如下:

test@sha:~/tmp> cat example2.grep

www.baidu.com

http://www.baidu.com

https://www.baidu.com

http://wwwbaiducom

httpwww.baidu.com

httpwwwbaiducom

httpwwwbaidu.com

http:wwwbaiducom

https:www.baidu.com

abchttp://www/baidu.comcde

http://www.abc.com

https://www.def.com

baidu.com

baidu

 

 

找出http://www.baidu.com

test@sha> grep -r '^http://www\.\bbaidu\b\.com$'example2.grep

http://www.baidu.com

 

找出http://www.baidu.comhttps://www.baidu.com

test@sha> grep -r '^https\{0,1\}://www\.\bbaidu\b\.com$'example2.grep

http://www.baidu.com

https://www.baidu.com

 

 

  1. 实例2:找出合法邮件的地址 (@前面包括大小写字母,数字,下划线,中划线和点号多个字符组成,并且以字母数字或者下划线开头)

 

新建文本example3.grep如下:

jack@qq.com

Mary@qq.com

Mike.li@qq.com

snow_chen@qq.coim

jack_2@hotmail.com

jack_3@qq.com

jack@.com

13345678921@qq.com

aaa@gmail.com

a@bc@qq.com

@@baidu.com

_abc@qq.com

.@qq.comi

abc+abc@qq.com

 

 

找出所有合规的邮件地址

test@sha> grep -i -E'^[a-zA-Z0-9_]+[a-z.]*@[a-zA-Z0-9]+\..*' example3.grep

jack@qq.com

Mary@qq.com

Mike.li@qq.com

snow_chen@qq.coim

jack_2@hotmail.com

jack_3@qq.com

13345678921@qq.com

aaa@gmail.com

_abc@qq.com

 

找出所有不合规的邮件地址

test@sha> grep -i -E '^[^a-zA-Z0-9_]*@'example3.grep

@@baidu.com

.@qq.comi

 

 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值