首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > perl python >

[D]关于施用PERL正则表达式抓取E-MAIL地址

2013-04-12 
[D]关于使用PERL正则表达式抓取E-MAIL地址本帖最后由 fibbery 于 2012-05-10 09:11:40 编辑各位帅哥美女:

[D]关于使用PERL正则表达式抓取E-MAIL地址
本帖最后由 fibbery 于 2012-05-10 09:11:40 编辑 各位帅哥美女:
     小弟对PERL不太熟悉.
     现在需要一个比较强大的用PERL语言处理的正则表达式.
     要求该逻辑能判断字符串为合法的E-MAIL地址,并抓取出来.
     现在我遇到的问题是相 helloword@163.com\,这种情况就不行了。
     请大家帮忙解决一下,写一段代码,若地址中存在这种非法的转义字符,如/\~*&^%......等,则判断为不正确的地址,返回1.


    谢谢各位啦

--------------------------
Double行动:
原帖分数:40
帖子加分:40
[解决办法]
可以分两步走
一是把可能的地址串提取出来
二是检查里面是否有非法字符
不一定非要用一个正则表达式就把所有问题解决
[解决办法]

/[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3}/i


[解决办法]
引用:
可以分两步走
一是把可能的地址串提取出来
二是检查里面是否有非法字符
不一定非要用一个正则表达式就把所有问题解决

一楼正解,你能用正则表达式解决问题,说明你对Perl有一定了解,但是没有必要总用正则表达式啊。
[解决办法]
("[a-zA-Z-0-9]+@[a-zA-Z0-9]+.[a-zA-Z0-9]+.[a-zA-Z0-9]+",a)
a代表需要匹配的内容。
split切割应该很麻烦。

热点排行