数据提取

介绍

小明在做数据分析的时候需要提取文件中关于数字的部分,同时还要提取用户的邮箱部分,但是有的行不是数组也不是邮箱,现在需要你在data2这个文件中帮助他用正则表达式匹配出数字部分和邮箱部分。在这里下载

wget http://labfile.oss.aliyuncs.com/courses/1/data2

  

将下载的data2保存在/home/shiyanlou/data2

目标

  1. 在文件data中匹配数字开头的行,结果写入/home/shiyanlou/num文件
  2. 在文件data中匹配出正确格式的邮箱,结果写入一个名为/home/shiyanlou/mail的文件

提示

  1. 邮箱的格式
  2. 注意符号.的处理

来源

2016年tapfun校招面试题

 答案

匹配数字开头的行

grep '^[[:digit:]].' data2>num

  

匹配正确格式的邮箱

grep '^[[:alnum:]]*@[[:alnum:]]*\.[[:alnum:]]*' data2>mail

  

总体上非常简单. 也可用 [0-9] 来代替 [[:digit:]] 
[a-zA-Z] 代替 [[:alpha:]] 
邮箱的 ‘. ’ 需要加 ‘\’ 转义.

posted @ 2018-05-10 18:31  绵绵思远道  阅读(290)  评论(0编辑  收藏  举报