Python用regex解析电子邮件地址

2024-09-29 17:20:24 发布

您现在位置:Python中文网/ 问答频道 /正文

我是python正则表达式的初学者

目标test.php代码:

<html>
  <head></head> 
  <body>
    <a href="www.google.com">josn2051@yahoo.com.tw</a>
    <div>john@yahoo.com.tw</div>
    testtest321@gmail.com
    chorm3636@test.test.test.com
  </body>
</html>

这是我的代码:

^{pr2}$

结果是:

[(u'josn2051@yahoo.com.tw', u'com.'), (u'john@yahoo.com.tw', u'com.'), (u'asdfFGw@gmail.com', u'gmail.'), (u'chorm3636@test.test.test.com', u'test.')]

但我想要的结果是:

[josn2051@yahoo.com.us, john@yahoo.com.us, testtest321@gmail.com, chorm3636@test.test.test.com]

我的模式或代码有什么问题?在

为什么结果是多个列表包含额外的comgmailtest?在

谢谢你解决我的疑惑!在


Tags: 代码testdivcomhtmlbodyjohnhead
2条回答

使内部组non-capturing

([\w\-\.]+@(?:\w[\w\-]+\.)+[\w\-]+)
            ^^

第一条规则是永远不要使用regexp来解析HTML,这是不可能做到正确的!在

一旦你有了一个文本块,你想验证为存在和电子邮件地址,你谷歌并找到2-5个非常好的regexp在stackoverfow上。regexp不是python特有的。在

第三,你要找一份更好的工作,试图从网站上删除电子邮件地址不是一件容易的事,这里的每个人都讨厌那些给我们发垃圾邮件的人。在

相关问题 更多 >

    热门问题