1.获取邮箱地址格式:
egrep regex: [A-Za-z0-9.]+@[A-Za-z0-9.]+\.[a-zA-Z]{2,4}
格式说明: 邮件地址格式为 name@domain.some_2-4_letter.
截取地址也要使用相同的方式.[A-Za-z0-9.]+ []内表示一组包含大写/小写/数字的一组字符重复一次或多次("+"加号表示一次或多次),@后为domain,也是和之前同类似表示一组字符. \. 这个"\"反斜杠表示转义,直接显示点号".",最后部分的[a-zA-Z]{2,4} 表示字母组成的2-4个长度的字符组.
2.获取网址:
http://[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,4}
https://[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,4}
格式说明:和邮件地址的格式基本相同,只是没有 @[A-Za-z0-9.]+ 这一邮件地址特有标记部分.
不同的类型有不同的格式标准,找到其中的共通处即可.
例:
[root@Fedora31 Templates]# cat email.txt
this is a line of text contains,<email> #slynux@slynux.com. </email>
and email address, blog "http://www.google.com", test@yahoo.com
dfdfdfdddfdf;cool.hacks@gmail.com<br />
<ahref="http://code.google.com"><h1>Heading</h1>
[root@Fedora31 Templates]# egrep -o '[A-Za-z0-9.]+@[A-Za-z0-9.]+\.[a-zA-Z]{2,4}' email.txt
slynux@slynux.com
test@yahoo.com
cool.hacks@gmail.com
[root@Fedora31 Templates]# egrep -o "http://[A-Za-z0-9.]+\.[a-zA-Z]{2,3}" email.txt
http://www.google.com
http://code.google.com
本文介绍了如何利用正则表达式在Linux环境中通过egrep命令获取网页或文件中的邮箱地址和网址格式。邮箱地址的格式是name@domain.some_2-4_letter,网址则缺少了邮件地址中的@标志。通过理解这些格式,可以有效地进行信息提取。
1946

被折叠的 条评论
为什么被折叠?



