查找页面上的所有电子邮件

时间:2014-04-10 19:41:04

标签: javascript html

我希望有JavaScript / jQuery代码扫描整个页面以查找电子邮件并将其存储在数组中。

我有一个正则表达的电子邮件,我知道如何让我们说一个文本字段有一个有效的电子邮件但我不知道如何扫描整个文档/页面(h1标签,h2标签,锚标签.... 。)寻找电子邮件。请帮忙

2 个答案:

答案 0 :(得分:5)

我认为这就是你要找的东西:

 function getEmails() {

var search_in = document.body.innerHTML;
string_context = search_in.toString();

array_mails = string_context.match(/([a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+\.[a-zA-Z0-9._-]+)/gi);
return array_mails;

}

简短说明: 此函数只获取正文的内容,其中应该是电子邮件,使其成为字符串,然后使用简单的正则表达式来获取所有匹配项(应用/ g修饰符),不区分大小写(/ i修饰符也是) ,这听起来像电子邮件文本。然后这些匹配作为所有匹配的数组返回。 var my_emails = getEmails()可能是你想知道的数组。

答案 1 :(得分:1)

如果您在源代码中尝试查找电子邮件地址,则可以使用该页面的整个body并使用match()直接解析它们方法

// assuming you have your regex stored in a variable "regex"
var emails = document.body.match(regex);
for(var i=0; i<emails.length; i++){
    console.log(emails[i]); // or whatever you need to do with them
}